fixed bug #494721
[fw/sdcc] / src / z80 / ralloc.c
index 9d58ded2361927dd8445fdcd0910ed2dd9f21ad8..b23b4b221e41543f502ba3d71f37643eaa8d7238 100644 (file)
@@ -1899,7 +1899,8 @@ packRegsForOneuse (iCode * ic, operand * op, eBBlock * ebp)
   /* now check if it is the return from a function call */
   if (dic->op == CALL || dic->op == PCALL)
     {
-      if (ic->op != SEND && ic->op != RETURN)
+      if (ic->op != SEND && ic->op != RETURN &&
+         !POINTER_SET(ic) && !POINTER_GET(ic))
        {
          OP_SYMBOL (op)->ruonly = 1;
          return dic;