1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-26 05:29:30 +00:00

Fixed a bug (hopefully).

The ArrayRef() does really need a rewrite, now since we have better
expression info.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3364 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2005-01-09 21:17:19 +00:00
parent 6a1ff58499
commit e06d9d0d84

View File

@ -799,7 +799,7 @@ static void Primary (ExprDesc* E)
static void ArrayRef (ExprDesc* Expr)
/* Handle an array reference */
/* Handle an array reference. This function needs a rewrite. */
{
int ConstBaseAddr;
ExprDesc SubScript;
@ -909,7 +909,7 @@ static void ArrayRef (ExprDesc* Expr)
/* It's a pointer, so we do have to load it into the primary
* first (if it's not already there).
*/
if (ConstBaseAddr) {
if (ConstBaseAddr || ED_IsLVal (Expr)) {
LoadExpr (CF_NONE, Expr);
ED_MakeRValExpr (Expr);
}