From 249d016b2196b37ab3c1ee4c47b7c9981440c557 Mon Sep 17 00:00:00 2001 From: StunxFS Date: Wed, 25 Dec 2024 20:55:50 -0400 Subject: [PATCH] avoid infinite loop inside p.parse_primary_expr() --- compiler/parser/expr.v | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/compiler/parser/expr.v b/compiler/parser/expr.v index 0b523e31..89049916 100644 --- a/compiler/parser/expr.v +++ b/compiler/parser/expr.v @@ -245,7 +245,11 @@ fn (mut p Parser) parse_primary_expr() ast.Expr { else {} } - for true { + if p.should_abort() { + return expr + } + + for { match true { p.accept(.lparen) { // call expr @@ -289,6 +293,9 @@ fn (mut p Parser) parse_primary_expr() ast.Expr { right: p.parse_expr() } } + p.should_abort() { + break + } else { break }