From 864515595e8798273f55979fcb28040c4c7f50e5 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Mon, 21 Apr 2025 19:34:25 -0400 Subject: Allow comprehensions inside parentheses --- src/parse.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src') diff --git a/src/parse.c b/src/parse.c index b5ca090a..59caabaa 100644 --- a/src/parse.c +++ b/src/parse.c @@ -478,6 +478,14 @@ PARSER(parse_parens) { whitespace(&pos); ast_t *expr = optional(ctx, &pos, parse_extended_expr); if (!expr) return NULL; + + ast_t *comprehension = parse_comprehension_suffix(ctx, expr); + while (comprehension) { + expr = comprehension; + pos = comprehension->end; + comprehension = parse_comprehension_suffix(ctx, expr); + } + whitespace(&pos); expect_closing(ctx, &pos, ")", "I wasn't able to parse the rest of this expression"); -- cgit v1.2.3