fixed bug #499071
authorjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 15 Jan 2002 11:09:26 +0000 (11:09 +0000)
committerjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 15 Jan 2002 11:09:26 +0000 (11:09 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@1802 4a8a32a2-be11-0410-ad9d-d568d2c75423

src/SDCCglue.c
src/SDCCmem.c

index 4033ed53b8b6150f6b055bb955fa15878a9bd47e..78ea8bfaa9ed0f9557ca6439d425af685ff5132d 100644 (file)
@@ -262,15 +262,6 @@ emitRegularMap (memmap * map, bool addPublics, bool arFlag)
          }
          codeOutFile = statsg->oFile;
 
-#if 0
-         if (ival) {
-           // set ival's lineno to where the symbol was defined
-           lineno=ival->lineno=sym->lineDef;
-           allocInfo = 0;
-           eBBlockFromiCode (iCodeFromAst (ival));
-           allocInfo = 1;
-         }
-#else
          if (ival) {
            // set ival's lineno to where the symbol was defined
            setAstLineno (ival, lineno=sym->lineDef);
@@ -283,7 +274,6 @@ emitRegularMap (memmap * map, bool addPublics, bool arFlag)
            eBBlockFromiCode (iCodeFromAst (ival));
            allocInfo = 1;
          }
-#endif
        }         
 
        /* if the ival is a symbol assigned to an aggregate,
@@ -1313,15 +1303,6 @@ emitOverlay (FILE * afile)
 
       if (elementsInSet (ovrset))
        {
-#if 0
-         /* this dummy area is used to fool the assembler
-            otherwise the assembler will append each of these
-            declarations into one chunk and will not overlay
-            sad but true */
-         fprintf (afile, "\t.area _DUMMY\n");
-#else
-         /* not anymore since asmain.c:1.13 */
-#endif
          /* output the area informtion */
          fprintf (afile, "\t.area\t%s\n", port->mem.overlay_name);     /* MOF */
        }
@@ -1329,8 +1310,7 @@ emitOverlay (FILE * afile)
       for (sym = setFirstItem (ovrset); sym;
           sym = setNextItem (ovrset))
        {
-
-         /* if extern then add it to the publics tabledo nothing */
+         /* if extern then it is in the publics table: do nothing */
          if (IS_EXTERN (sym->etype))
            continue;
 
index da118602a3f1fcc5d481a5af9dffbb32ba1aae86..e4f60ba7ac33e110313389871433f9b51dd072eb 100644 (file)
@@ -546,14 +546,13 @@ deallocParms (value * val)
 
       /* unmark is myparm */
       lval->sym->ismyparm = 0;
-      /* if on stack then depending on which stack */
 
       /* delete it from the symbol table  */
       deleteSym (SymbolTab, lval->sym, lval->sym->name);
 
       if (!lval->sym->isref)
        {
-         lval->sym->allocreq = 1;
+         lval->sym->allocreq = 0;
          werror (W_NO_REFERENCE, currFunc->name,
                  "function argument", lval->sym->name);
        }
@@ -724,7 +723,7 @@ deallocLocal (symbol * csym)
 
   for (sym = csym; sym; sym = sym->next)
     {
-      if (sym->_isparm)
+      if (sym->_isparm) 
        continue;
 
       /* if it is on the stack */