| ... | ... | @@ -5418,12 +5418,19 @@ fn forExpr( |
| 5418 | 5418 | if (for_full.label_token) |label_token| { |
| 5419 | 5419 | try astgen.checkLabelRedefinition(scope, label_token); |
| 5420 | 5420 | } |
| 5421 | |
| 5421 | 5422 | // Set up variables and constants. |
| 5422 | 5423 | const is_inline = parent_gz.force_comptime or for_full.inline_token != null; |
| 5423 | 5424 | const tree = astgen.tree; |
| 5424 | 5425 | const token_tags = tree.tokens.items(.tag); |
| 5425 | 5426 | |
| 5426 | | const array_ptr = try expr(parent_gz, scope, .none_or_ref, for_full.ast.cond_expr); |
| 5427 | const payload_is_ref = if (for_full.payload_token) |payload_token| |
| 5428 | token_tags[payload_token] == .asterisk |
| 5429 | else |
| 5430 | false; |
| 5431 | |
| 5432 | const cond_rl: ResultLoc = if (payload_is_ref) .ref else .none; |
| 5433 | const array_ptr = try expr(parent_gz, scope, cond_rl, for_full.ast.cond_expr); |
| 5427 | 5434 | const len = try parent_gz.addUnNode(.indexable_ptr_len, array_ptr, for_full.ast.cond_expr); |
| 5428 | 5435 | |
| 5429 | 5436 | const index_ptr = blk: { |