Fixed a bug
git-svn-id: svn://svn.cc65.org/cc65/trunk@1862 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
@@ -1625,13 +1625,21 @@ int hie10 (ExprDesc* lval)
|
|||||||
lval->Flags = E_MEXPR;
|
lval->Flags = E_MEXPR;
|
||||||
lval->ConstVal = 0; /* Offset is zero now */
|
lval->ConstVal = 0; /* Offset is zero now */
|
||||||
}
|
}
|
||||||
t = lval->Type;
|
/* If the expression is already a pointer to function, the
|
||||||
if (IsClassPtr (t)) {
|
* additional dereferencing operator must be ignored.
|
||||||
lval->Type = Indirect (t);
|
*/
|
||||||
|
if (IsTypeFuncPtr (lval->Type)) {
|
||||||
|
/* Expression not storable */
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
if (IsClassPtr (lval->Type)) {
|
||||||
|
lval->Type = Indirect (lval->Type);
|
||||||
} else {
|
} else {
|
||||||
Error ("Illegal indirection");
|
Error ("Illegal indirection");
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case TOK_AND:
|
case TOK_AND:
|
||||||
NextToken ();
|
NextToken ();
|
||||||
|
|||||||
Reference in New Issue
Block a user