diff --git a/lib/std/zig/parse.zig b/lib/std/zig/parse.zig index 044766c5cf..4d5cadb37b 100644 --- a/lib/std/zig/parse.zig +++ b/lib/std/zig/parse.zig @@ -2616,7 +2616,7 @@ const Parser = struct { const found_payload = try p.parsePtrIndexPayload(); if (found_payload == 0) try p.warn(.expected_loop_payload); - const then_expr = try p.expectExpr(); + const then_expr = try p.expectTypeExpr(); const else_token = p.eatToken(.keyword_else) orelse { return p.addNode(.{ .tag = .for_simple, diff --git a/lib/std/zig/parser_test.zig b/lib/std/zig/parser_test.zig index 9359aa2cd2..f6aab4ceca 100644 --- a/lib/std/zig/parser_test.zig +++ b/lib/std/zig/parser_test.zig @@ -5154,7 +5154,7 @@ test "recovery: missing for payload" { try testError( \\comptime { \\ const a = for(a) {}; - \\ const a: for(a) {}; + \\ const a: for(a) blk: {}; \\ for(a) {} \\} , &[_]Error{