diff --git a/src/tokenizer.cpp b/src/tokenizer.cpp index 22d63568bf..b4e9d910d9 100644 --- a/src/tokenizer.cpp +++ b/src/tokenizer.cpp @@ -1494,9 +1494,17 @@ void tokenize(Buf *buf, Tokenization *out) { tokenize_error(&t, "unexpected EOF"); break; case TokenizeStateLineComment: + break; case TokenizeStateSawSlash2: + cancel_token(&t); + break; case TokenizeStateSawSlash3: + set_token_id(&t, t.cur_tok, TokenIdDocComment); + end_token(&t); + break; case TokenizeStateSawSlashBang: + set_token_id(&t, t.cur_tok, TokenIdContainerDocComment); + end_token(&t); break; } if (t.state != TokenizeStateError) { diff --git a/test/stage1/behavior.zig b/test/stage1/behavior.zig index dfc4321500..c3407db3e6 100644 --- a/test/stage1/behavior.zig +++ b/test/stage1/behavior.zig @@ -41,6 +41,9 @@ comptime { _ = @import("behavior/bugs/3586.zig"); _ = @import("behavior/bugs/3742.zig"); _ = @import("behavior/bugs/4560.zig"); + _ = @import("behavior/bugs/4769_a.zig"); + _ = @import("behavior/bugs/4769_b.zig"); + _ = @import("behavior/bugs/4769_c.zig"); _ = @import("behavior/bugs/394.zig"); _ = @import("behavior/bugs/421.zig"); _ = @import("behavior/bugs/529.zig"); diff --git a/test/stage1/behavior/bugs/4769_a.zig b/test/stage1/behavior/bugs/4769_a.zig new file mode 100644 index 0000000000..ab0c01417a --- /dev/null +++ b/test/stage1/behavior/bugs/4769_a.zig @@ -0,0 +1 @@ +// \ No newline at end of file diff --git a/test/stage1/behavior/bugs/4769_b.zig b/test/stage1/behavior/bugs/4769_b.zig new file mode 100644 index 0000000000..23b2513f17 --- /dev/null +++ b/test/stage1/behavior/bugs/4769_b.zig @@ -0,0 +1 @@ +//! \ No newline at end of file diff --git a/test/stage1/behavior/bugs/4769_c.zig b/test/stage1/behavior/bugs/4769_c.zig new file mode 100644 index 0000000000..4894ddf7e8 --- /dev/null +++ b/test/stage1/behavior/bugs/4769_c.zig @@ -0,0 +1 @@ +/// \ No newline at end of file