additional signed char correction
[fw/sdcc] / src / mcs51 / gen.c
index 48fd53ed100cb767dfb92fddf1bb93cbf5a4d64a..f2b156b405c9fe6806eadba0b10e8cb20a0b8b6f 100644 (file)
@@ -625,8 +625,8 @@ aopForSym (iCode * ic, symbol * sym, bool result)
           if (sym->onStack)
             {
               signed char offset = ((sym->stack < 0) ?
-                         ((char) (sym->stack - _G.nRegsSaved)) :
-                         ((char) sym->stack)) & 0xff;
+                         ((signed char) (sym->stack - _G.nRegsSaved)) :
+                         ((signed char) sym->stack)) & 0xff;
 
               if ((abs(offset) <= 3) ||
                   (accuse && (abs(offset) <= 7)))