diff --git a/vlib/v/parser/for.v b/vlib/v/parser/for.v index 6b2d09b6a7..d9a2efb22b 100644 --- a/vlib/v/parser/for.v +++ b/vlib/v/parser/for.v @@ -82,8 +82,7 @@ fn (mut p Parser) for_stmt() ast.Stmt { } p.close_scope() return for_c_stmt - } else if (p.peek_tok.kind in [.key_in, .comma] && !(p.tok.kind == .name - && p.peek_tok.kind == .key_in && p.scope.known_var(p.tok.lit))) + } else if p.peek_tok.kind in [.key_in, .comma] || (p.tok.kind == .key_mut && p.peek_token(2).kind in [.key_in, .comma]) { // `for i in vals`, `for i in start .. end`, `for mut user in users`, `for i, mut user in users` mut val_is_mut := p.tok.kind == .key_mut diff --git a/vlib/v/tests/for_cond_test.v b/vlib/v/tests/for_cond_test.v deleted file mode 100644 index 6d027614e9..0000000000 --- a/vlib/v/tests/for_cond_test.v +++ /dev/null @@ -1,10 +0,0 @@ -type TokenValue = rune | u64 - -fn test_for_cond() { - val := `+` - for val in [TokenValue(`+`), TokenValue(`-`)] { - println('ok') - break - } - assert true -}