Fix for Issue #1075 and #1077.

This commit is contained in:
acqn
2020-07-15 20:22:28 +08:00
committed by Oliver Schmidt
parent ba48dfe65d
commit 2108489523
12 changed files with 598 additions and 260 deletions

View File

@@ -98,7 +98,7 @@ void Assignment (ExprDesc* Expr)
if (UseReg) {
PushAddr (Expr);
} else {
ED_MakeRVal (Expr);
ED_MarkExprAsRVal (Expr);
LoadExpr (CF_NONE, Expr);
g_push (CF_PTR | CF_UNSIGNED, 0);
}
@@ -127,7 +127,7 @@ void Assignment (ExprDesc* Expr)
} else {
/* We will use memcpy. Push the address of the rhs */
ED_MakeRVal (&Expr2);
ED_MarkExprAsRVal (&Expr2);
LoadExpr (CF_NONE, &Expr2);
/* Push the address (or whatever is in ax in case of errors) */
@@ -264,5 +264,5 @@ void Assignment (ExprDesc* Expr)
}
/* Value is still in primary and not an lvalue */
ED_MakeRValExpr (Expr);
ED_FinalizeRValLoad (Expr);
}