]> git.sur5r.net Git - cc65/commitdiff
Fix crash due to mistaken symbol identity.
authorlaubzega <mileksmyk@gmail.com>
Thu, 4 Oct 2018 04:59:19 +0000 (21:59 -0700)
committerOliver Schmidt <ol.sc@web.de>
Mon, 8 Oct 2018 14:27:00 +0000 (16:27 +0200)
src/cc65/symtab.c

index 87fad111b33b98ef37312b7786c96e5d3f5f65ba..c875360e38fec5704f002b6e8b1f91a446ce859e 100644 (file)
@@ -839,6 +839,12 @@ SymEntry* AddGlobalSym (const char* Name, const Type* T, unsigned Flags)
 
         Type* EType;
 
+        /* Even if the symbol already exists, let's make sure it
+        ** is not an ENUM. See bug #728. */
+        if (Entry->Flags & SC_ENUM) {
+            Fatal ("Conflicting types for `%s'", Name);
+        }
+
         /* We have a symbol with this name already */
         if (Entry->Flags & SC_TYPE) {
             Error ("Multiple definition for `%s'", Name);