diff --git a/ir.c b/ir.c index 7d83720..1aea818 100644 --- a/ir.c +++ b/ir.c @@ -1892,7 +1892,7 @@ ir_value* ir_block_create_unary(ir_block *self, lex_ctx_t ctx, case VINSTR_NEG_F: return ir_block_create_general_instr(self, ctx, label, INSTR_SUB_F, NULL, operand, ot); case VINSTR_NEG_V: - return ir_block_create_general_instr(self, ctx, label, INSTR_SUB_V, NULL, operand, ot); + return ir_block_create_general_instr(self, ctx, label, INSTR_SUB_V, self->owner->owner->nil, operand, ot); default: ot = operand->vtype;