- Member access on a struct returned by the assignment expression, cause crash #2947

This commit is contained in:
Christoffer Lerno
2026-02-19 20:43:39 +01:00
parent 8bb974829d
commit 585c66100d
3 changed files with 37 additions and 1 deletions

View File

@@ -216,7 +216,14 @@ BEValue llvm_emit_assign_expr(GenContext *c, BEValue *ref, Expr *ref_expr, Expr
if (ref_expr && c->current_block) llvm_emit_expr(c, ref, ref_expr);
}
if (!c->current_block) goto AFTER_STORE;
if (value.type != type_void) llvm_store(c, ref, &value);
if (value.type == type_void)
{
value = *ref;
}
else
{
llvm_store(c, ref, &value);
}
}
if (optional)