]> git.gag.com Git - fw/sdcc/commitdiff
fixed a sprintf() bug, only visible in the ds390 port
authorjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Sat, 27 Oct 2001 17:16:52 +0000 (17:16 +0000)
committerjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Sat, 27 Oct 2001 17:16:52 +0000 (17:16 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@1452 4a8a32a2-be11-0410-ad9d-d568d2c75423

src/SDCCast.c
src/SDCCmem.c
src/SDCCsymt.c

index d8d961a16668b1330853943a3b3bc6bca95e77b0..a266357356a7fa49870287a1d9cebc4874311068 100644 (file)
@@ -708,7 +708,7 @@ processParms (ast * func,
     }
 
   /* if defined parameters ended but actual has not & */
-  /* stackAuto                */
+  /* reentrant */
   if (!defParm && actParm &&
       (options.stackAuto || IFFUNC_ISREENT (func->ftype)))
     return 0;
index 883072ff8bd3127f6b2da5a6c96f4f20e2b2b245..8b95850638c54e44eb944a71e3201b9b3b27aa75 100644 (file)
@@ -370,6 +370,7 @@ allocGlobal (symbol * sym)
     {
       /* set the output class */
       SPEC_OCLS (sym->etype) = port->mem.default_globl_map;
+      // jwk: we need to set SPEC_SCLS now !!!!
       /* generate the symbol  */
       allocIntoSeg (sym);
       return;
index 27eb61915394f9f8d6bc68954995842c430745b1..e0a94215961d52e8274988f9da47e9e41533aeba 100644 (file)
@@ -1452,6 +1452,7 @@ compareType (sym_link * dest, sym_link * src)
            int res=compareType (dest, val->type);
            Safe_free(val->type);
            Safe_free(val);
+           //return res ? -1 : 0;
            return res;
          }
          if (IS_PTR (dest) && IS_FUNC (dest->next) && IS_FUNC (src))
@@ -1560,6 +1561,11 @@ aggregateToPointer (value * val)
          DCL_TYPE (val->type) = PPOINTER;
          break;
        case S_FIXED:
+         if (SPEC_OCLS(val->etype)) {
+           DCL_TYPE(val->type)=PTR_TYPE(SPEC_OCLS(val->etype));
+         }
+         break;
+
          if (TARGET_IS_DS390)
            {
              /* The AUTO and REGISTER classes should probably