Changes in src/Parser/DeclarationNode.cc [2f0a0678:af9da5f]
- File:
-
- 1 edited
-
src/Parser/DeclarationNode.cc (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/DeclarationNode.cc
r2f0a0678 raf9da5f 10 10 // Created On : Sat May 16 12:34:05 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue May 22 08:39:29201813 // Update Count : 107 412 // Last Modified On : Wed May 16 09:37:17 2018 13 // Update Count : 1070 14 14 // 15 15 … … 32 32 #include "SynTree/Type.h" // for Type, Type::StorageClasses, Type::... 33 33 #include "TypeData.h" // for TypeData, TypeData::Aggregate_t 34 #include "TypedefTable.h" // for TypedefTable 34 #include "TypedefTable.h" // for TypedefTable, TypedefTable::kind_t... 35 35 36 36 class Initializer; … … 54 54 55 55 DeclarationNode::DeclarationNode() : 56 builtin( NoBuiltinType ),57 56 type( nullptr ), 58 57 bitfieldWidth( nullptr ), … … 102 101 newnode->name = name ? new string( *name ) : nullptr; 103 102 104 newnode->builtin = NoBuiltinType;105 103 newnode->type = maybeClone( type ); 106 104 newnode->storageClasses = storageClasses; … … 181 179 newnode->type->function.body = body; 182 180 181 // ignore unnamed routine declarations: void p( int (*)(int) ); 182 if ( newnode->name ) { 183 typedefTable.addToEnclosingScope( *newnode->name, TypedefTable::ID ); 184 } // if 185 183 186 if ( ret ) { 184 187 newnode->type->base = ret->type; … … 282 285 newnode->name = name; 283 286 newnode->enumeratorValue.reset( constant ); 287 typedefTable.addToEnclosingScope( *newnode->name, TypedefTable::ID ); 284 288 return newnode; 285 289 } // DeclarationNode::newEnumConstant … … 547 551 type->aggregate.params = q->type->forall; // make polymorphic type 548 552 // change implicit typedef from TYPEDEFname to TYPEGENname 549 typedefTable.changeKind( *type->aggregate.name, T YPEGENname);553 typedefTable.changeKind( *type->aggregate.name, TypedefTable::TG ); 550 554 } // if 551 555 } else { // not polymorphic
Note:
See TracChangeset
for help on using the changeset viewer.