Write scopes in id order, so we don't need to write out the id itself. Add the
size of the scope to the output file and a flag bit that tells us if the scope has a size. git-svn-id: svn://svn.cc65.org/cc65/trunk@5097 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
@@ -108,7 +108,7 @@ static long DoStructInternal (long Offs, unsigned Type)
|
||||
int Anon = (CurTok.Tok != TOK_IDENT);
|
||||
if (!Anon) {
|
||||
/* Enter a new scope, then skip the name */
|
||||
SymEnterLevel (&CurTok.SVal, SCOPETYPE_STRUCT, ADDR_SIZE_ABS, 0);
|
||||
SymEnterLevel (&CurTok.SVal, SCOPE_STRUCT, ADDR_SIZE_ABS, 0);
|
||||
NextTok ();
|
||||
/* Start at zero offset in the new scope */
|
||||
Offs = 0;
|
||||
@@ -195,7 +195,7 @@ static long DoStructInternal (long Offs, unsigned Type)
|
||||
Struct = ParseScopedSymTable ();
|
||||
if (Struct == 0) {
|
||||
ErrorSkip ("Unknown struct/union");
|
||||
} else if (GetSymTabType (Struct) != SCOPETYPE_STRUCT) {
|
||||
} else if (GetSymTabType (Struct) != SCOPE_STRUCT) {
|
||||
ErrorSkip ("Not a struct/union");
|
||||
} else {
|
||||
SymEntry* SizeSym = GetSizeOfScope (Struct);
|
||||
|
||||
Reference in New Issue
Block a user