fixed bug #679761
authorjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Mon, 24 Feb 2003 13:51:04 +0000 (13:51 +0000)
committerjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Mon, 24 Feb 2003 13:51:04 +0000 (13:51 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2304 4a8a32a2-be11-0410-ad9d-d568d2c75423

src/SDCCsymt.c

index 6d5e32436bffa1eea8d6cd9c678694e61b17e892..cebe16c5f36757adbf8b323f95dbc706af850b99 100644 (file)
@@ -990,14 +990,16 @@ addSymChain (symbol * symHead)
            werror (E_EXTERN_MISMATCH, csym->name);
            continue;
          }
-         /* delete current entry */
-         deleteSym (SymbolTab, csym, csym->name);
-         deleteFromSeg(csym);
        } else {
          /* not extern */
-         werror (E_DUPLICATE, sym->name);
-         continue;
+         if (compareType (csym->type, sym->type) != 1) {
+           werror (E_DUPLICATE, sym->name);
+           continue;
+         }
        }
+       /* delete current entry */
+       deleteSym (SymbolTab, csym, csym->name);
+       deleteFromSeg(csym);
       }
 
       /* add new entry */