]> www.git.momoyon.org Git - lang.git/commitdiff
[main.c] Catch errors like (1 0)...
authormomoyon <ahmedsamyh10@gmail.com>
Thu, 24 Apr 2025 12:00:04 +0000 (17:00 +0500)
committermomoyon <ahmedsamyh10@gmail.com>
Thu, 24 Apr 2025 12:00:04 +0000 (17:00 +0500)
- (1 0), Here we say that 0 is unexpected and we expect )

main.c

diff --git a/main.c b/main.c
index 5405cc42d28654dfb9111268ed7f1f50f4dca71c..bf2583cfdb4b9677a29de59e2dff5ddd22169036 100644 (file)
--- a/main.c
+++ b/main.c
@@ -727,6 +727,11 @@ Expression *primary(Arena *arena, Parser *p) {
     } else {
         parser_advance(p); // Skip (
         Expression *expr = expression(arena, p);
+        if (parser_peek(p).type != TK_RIGHT_PAREN) {
+            Token t = parser_peek(p);
+            error_pretty(t.loc, (*p->lexer), "Expected ), But got `%s`", token_type_as_str(t.type));
+            return NULL;
+        }
         parser_advance(p); // Skip )
         return expr;
     }