aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2019-06-27 17:22:35 -0400
committerAndrew Kelley <andrew@ziglang.org>2019-06-27 17:22:35 -0400
commit0a0c11685fd8faf73392d88dbdee7c744cc83386 (patch)
tree73ef6a0fc9f6d183f70bec3750182665e157a909 /src/ir.cpp
parent1b23c461380dea2a2b04eb234652a705f01f05a7 (diff)
downloadzig-0a0c11685fd8faf73392d88dbdee7c744cc83386.tar.gz
zig-0a0c11685fd8faf73392d88dbdee7c744cc83386.zip
fix for with null and T peer types and inferred result location type
See #2762
Diffstat (limited to 'src/ir.cpp')
-rw-r--r--src/ir.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/ir.cpp b/src/ir.cpp
index 74f6d0485d..abae52fcb5 100644
--- a/src/ir.cpp
+++ b/src/ir.cpp
@@ -6521,7 +6521,7 @@ static IrInstruction *ir_gen_for_expr(IrBuilder *irb, Scope *parent_scope, AstNo
loop_scope->is_comptime = is_comptime;
loop_scope->incoming_blocks = &incoming_blocks;
loop_scope->incoming_values = &incoming_values;
- loop_scope->lval = lval;
+ loop_scope->lval = LValNone;
loop_scope->peer_parent = peer_parent;
// Note the body block of the loop is not the place that lval and result_loc are used -
@@ -6548,7 +6548,7 @@ static IrInstruction *ir_gen_for_expr(IrBuilder *irb, Scope *parent_scope, AstNo
}
ResultLocPeer *peer_result = create_peer_result(peer_parent);
peer_parent->peers.append(peer_result);
- else_result = ir_gen_node_extra(irb, else_node, parent_scope, lval, &peer_result->base);
+ else_result = ir_gen_node_extra(irb, else_node, parent_scope, LValNone, &peer_result->base);
if (else_result == irb->codegen->invalid_instruction)
return else_result;
if (!instr_is_unreachable(else_result))
@@ -6570,7 +6570,7 @@ static IrInstruction *ir_gen_for_expr(IrBuilder *irb, Scope *parent_scope, AstNo
IrInstruction *phi = ir_build_phi(irb, parent_scope, node, incoming_blocks.length,
incoming_blocks.items, incoming_values.items, peer_parent);
- return ir_expr_wrap(irb, parent_scope, phi, result_loc);
+ return ir_lval_wrap(irb, parent_scope, phi, lval, result_loc);
}
static IrInstruction *ir_gen_bool_literal(IrBuilder *irb, Scope *scope, AstNode *node) {