From: laubzega Date: Thu, 4 Oct 2018 04:59:19 +0000 (-0700) Subject: Fix crash due to mistaken symbol identity. X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=92defb7a2b1638f5e8949dfff5eef9c04a167ff1;p=cc65 Fix crash due to mistaken symbol identity. --- diff --git a/src/cc65/symtab.c b/src/cc65/symtab.c index 87fad111b..c875360e3 100644 --- a/src/cc65/symtab.c +++ b/src/cc65/symtab.c @@ -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);