From febb7658ad453fe102c8bddd5c31b6e266127c23 Mon Sep 17 00:00:00 2001 From: momoyon Date: Thu, 24 Apr 2025 17:00:04 +0500 Subject: [PATCH] [main.c] Catch errors like (1 0)... - (1 0), Here we say that 0 is unexpected and we expect ) --- main.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/main.c b/main.c index 5405cc4..bf2583c 100644 --- 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; } -- 2.39.5