about summary refs log tree commit diff
path: root/boot/lex.c
diff options
context:
space:
mode:
authorMel <mel@rnrd.eu>2026-05-28 04:24:51 +0200
committerMel <mel@rnrd.eu>2026-05-28 04:24:51 +0200
commit4ec376b67d605910cb7757dc2e15a28a942f59ca (patch)
tree4e98614792e5a00175fa29e705142850993d68f6 /boot/lex.c
parenta5b24e3eedc8bd48de99cfb90abb3bececa5d29f (diff)
downloadcatskill-4ec376b67d605910cb7757dc2e15a28a942f59ca.tar.zst
catskill-4ec376b67d605910cb7757dc2e15a28a942f59ca.zip
Correct type modifier combinations and grouping
Signed-off-by: Mel <mel@rnrd.eu>
Diffstat (limited to 'boot/lex.c')
-rw-r--r--boot/lex.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/boot/lex.c b/boot/lex.c
index 6c3e86f..29b5294 100644
--- a/boot/lex.c
+++ b/boot/lex.c
@@ -335,7 +335,7 @@ bool
 token_ends_statement(const struct Token* t)
 {
     return token_is(t, TOKEN_END_OF_FILE) || token_is(t, TOKEN_NEWLINE)
-        || token_is(t, TOKEN_SEMICOLON);
+           || token_is(t, TOKEN_SEMICOLON);
 }
 
 bool
@@ -358,6 +358,7 @@ token_can_begin_type(const struct Token* t)
 
     // references
     case TOKEN_AMPERSAND:
+    case TOKEN_AND: // `&&` counts as a double-reference!
         return true;
     default:
         return false;
@@ -877,4 +878,4 @@ lexer_next(struct Lexer* l)
 
     union Token_Value value = (union Token_Value){ .unknown_character = c.character };
     return token_new(TOKEN_SOMETHING, span_width(position, 1), cursor, value);
-}
\ No newline at end of file
+}