From 4a942f3deacdff8846318d58e7a963f589c189cd Mon Sep 17 00:00:00 2001 From: melektron Date: Wed, 14 Jan 2026 02:46:14 +0100 Subject: Added support for block comments using /* */ syntax --- src/lexer/token.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/lexer/token.c b/src/lexer/token.c index 6ada798..84b9714 100644 --- a/src/lexer/token.c +++ b/src/lexer/token.c @@ -82,6 +82,41 @@ Token lexer_next(Lexer *l) return lexer_next(l); } + // Block Comments. + if (s[0] == '/' && s[1] == '*') + { + // skip two start chars + l->pos += 2; + s += 2; + + while (s[0]) + { + // s[len+1] can be at most the null terminator + if (s[0] == '*' && s[1] == '/') + { + // go over */ + l->pos += 2; + s += 2; + break; + } + + if (s[0] == '\n') + { + l->line++; + l->col = 1; + } + else + { + l->col++; + } + + l->pos++; + s++; + } + + return lexer_next(l); + } + // Identifiers. if (is_ident_start(*s)) { -- cgit v1.2.3