diff --git a/src/cc65/compile.c b/src/cc65/compile.c index f970edef7..94dfc3ffb 100644 --- a/src/cc65/compile.c +++ b/src/cc65/compile.c @@ -156,9 +156,8 @@ static void Parse (void) ** ** This means that "extern int i;" will not get storage allocated. */ - if ((Decl.StorageClass & SC_FUNC) != SC_FUNC && - (Decl.StorageClass & SC_TYPEMASK) != SC_TYPEDEF && - (Decl.StorageClass & SC_FICTITIOUS) != SC_FICTITIOUS) { + if ((Decl.StorageClass & SC_FUNC) != SC_FUNC && + (Decl.StorageClass & SC_TYPEMASK) != SC_TYPEDEF) { if ((Spec.Flags & DS_DEF_STORAGE) != 0 || (Decl.StorageClass & (SC_EXTERN|SC_STATIC)) == SC_STATIC || ((Decl.StorageClass & SC_EXTERN) != 0 && diff --git a/src/cc65/declare.c b/src/cc65/declare.c index 8879c46d8..a18c837b9 100644 --- a/src/cc65/declare.c +++ b/src/cc65/declare.c @@ -2080,7 +2080,7 @@ void ParseDecl (const DeclSpec* Spec, Declaration* D, declmode_t Mode) if (PrevErrorCount != ErrorCount) { /* Make the declaration fictitious if is is not parsed correctly */ - D->StorageClass |= SC_DECL | SC_FICTITIOUS; + D->StorageClass |= SC_FICTITIOUS; if (Mode == DM_NEED_IDENT && D->Ident[0] == '\0') { /* Use a fictitious name for the identifier if it is missing */ diff --git a/src/cc65/locals.c b/src/cc65/locals.c index 7812acebd..c2e314485 100644 --- a/src/cc65/locals.c +++ b/src/cc65/locals.c @@ -476,8 +476,7 @@ static void ParseOneDecl (const DeclSpec* Spec) } /* If the symbol is not marked as external, it will be defined now */ - if ((Decl.StorageClass & SC_FICTITIOUS) == 0 && - (Decl.StorageClass & SC_DECL) == 0 && + if ((Decl.StorageClass & SC_DECL) == 0 && (Decl.StorageClass & SC_EXTERN) == 0) { Decl.StorageClass |= SC_DEF; }