wgsl: Treat // as comment

Also support # as comments for now while we migrate.

See:
https: //github.com/gpuweb/gpuweb/issues/1262
https: //github.com/gpuweb/gpuweb/pull/1326
Change-Id: I3547f575c35f4fd46b95f0f2d8b79f4015364c83
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/36680
Commit-Queue: Ben Clayton <bclayton@google.com>
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
diff --git a/src/reader/wgsl/lexer.cc b/src/reader/wgsl/lexer.cc
index af8ab7e..9b8f584 100644
--- a/src/reader/wgsl/lexer.cc
+++ b/src/reader/wgsl/lexer.cc
@@ -143,7 +143,8 @@
 }
 
 void Lexer::skip_comments() {
-  if (!matches(pos_, "#")) {
+  // TODO(bclayton): Remove support for # comments
+  if (!matches(pos_, "#") && !matches(pos_, "//")) {
     return;
   }
 
diff --git a/src/reader/wgsl/lexer_test.cc b/src/reader/wgsl/lexer_test.cc
index 3a9d7bb..8668960 100644
--- a/src/reader/wgsl/lexer_test.cc
+++ b/src/reader/wgsl/lexer_test.cc
@@ -49,9 +49,9 @@
 }
 
 TEST_F(LexerTest, Skips_Comments) {
-  Source::File file("test.wgsl", R"(#starts with comment
-ident1 #ends with comment
-# blank line
+  Source::File file("test.wgsl", R"(//starts with comment
+ident1 //ends with comment
+// blank line
  ident2)");
   Lexer l(&file);
 
diff --git a/src/reader/wgsl/parser_impl_for_stmt_test.cc b/src/reader/wgsl/parser_impl_for_stmt_test.cc
index b112779..42af07d 100644
--- a/src/reader/wgsl/parser_impl_for_stmt_test.cc
+++ b/src/reader/wgsl/parser_impl_for_stmt_test.cc
@@ -135,7 +135,7 @@
      })";
 
   std::string loop_str =
-      R"({ # Introduce new scope for loop variable i
+      R"({ // Introduce new scope for loop variable i
       var i : i32 = 0;
       loop {
         if (!(i < 4)) {
diff --git a/src/reader/wgsl/parser_impl_test.cc b/src/reader/wgsl/parser_impl_test.cc
index 54dde10..95d28cf 100644
--- a/src/reader/wgsl/parser_impl_test.cc
+++ b/src/reader/wgsl/parser_impl_test.cc
@@ -46,7 +46,7 @@
 
 TEST_F(ParserImplTest, HandlesError) {
   auto p = parser(R"(
-fn main() ->  {  # missing return type
+fn main() ->  {  // missing return type
   return;
 })");
 
diff --git a/src/reader/wgsl/parser_test.cc b/src/reader/wgsl/parser_test.cc
index 0ee28ab..1bb967e 100644
--- a/src/reader/wgsl/parser_test.cc
+++ b/src/reader/wgsl/parser_test.cc
@@ -48,7 +48,7 @@
 
 TEST_F(ParserTest, HandlesError) {
   Source::File file("test.wgsl", R"(
-fn main() ->  {  # missing return type
+fn main() ->  {  // missing return type
   return;
 })");
   Parser p(&file);