mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-01-19 15:30:50 +00:00
Use new_binary_expr to recreate the assignment.
assign_expr mangles the destination expression for dereferenced assignments into something that is invalid as an lvalue, so simply use new_binary_expr with the same opcode.
This commit is contained in:
parent
0fc8aa54e1
commit
9d27764576
1 changed files with 2 additions and 1 deletions
|
@ -1195,7 +1195,8 @@ convert_bool (expr_t *e, int block)
|
||||||
src = e->e.expr.e2;
|
src = e->e.expr.e2;
|
||||||
if (src->type == ex_block) {
|
if (src->type == ex_block) {
|
||||||
src = new_temp_def_expr (get_type (src));
|
src = new_temp_def_expr (get_type (src));
|
||||||
e = assign_expr (e->e.expr.e1, assign_expr (src, e->e.expr.e2));
|
e = new_binary_expr (e->e.expr.op, e->e.expr.e1,
|
||||||
|
assign_expr (src, e->e.expr.e2));
|
||||||
}
|
}
|
||||||
b = convert_bool (src, 1);
|
b = convert_bool (src, 1);
|
||||||
if (b->type == ex_error)
|
if (b->type == ex_error)
|
||||||
|
|
Loading…
Reference in a new issue