fix segfault on casting int to pointer
[fw/sdcc] / src / mcs51 / ralloc.c
index 415d930d5a3570a85a7e196b8e0b4199eeaa321f..09fd032dfcc3b2d7ef83d7ee2ab34bc5b3d5a684 100644 (file)
@@ -1076,7 +1076,8 @@ static void serialRegAssign (eBBlock **ebbs, int count)
                
                /* if we need ptr regs for the right side
                   then mark it */
-               if (POINTER_GET(ic) && getSize(OP_SYMBOL(IC_LEFT(ic))->type) 
+               if (POINTER_GET(ic) && IS_SYMOP(IC_LEFT(ic)) 
+                && getSize(OP_SYMBOL(IC_LEFT(ic))->type) 
                    <= PTRSIZE) 
                {
                    mcs51_ptrRegReq++;