Changes in src/Parser/DeclarationNode.cc [67cf18c:409433da]
- File:
-
- 1 edited
-
src/Parser/DeclarationNode.cc (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/DeclarationNode.cc
r67cf18c r409433da 57 57 variable.tyClass = NoTypeClass; 58 58 variable.assertions = nullptr; 59 variable.initializer = nullptr;60 59 61 60 // attr.name = nullptr; … … 71 70 // delete variable.name; 72 71 delete variable.assertions; 73 delete variable.initializer;74 72 75 73 delete type; … … 103 101 newnode->variable.tyClass = variable.tyClass; 104 102 newnode->variable.assertions = maybeClone( variable.assertions ); 105 newnode->variable.initializer = maybeClone( variable.initializer );106 103 107 104 // newnode->attr.name = attr.name ? new string( *attr.name ) : nullptr; … … 860 857 } 861 858 862 DeclarationNode * DeclarationNode::addTypeInitializer( DeclarationNode * init ) {863 assertf( variable.tyClass != NoTypeClass, "Called addTypeInitializer on something that isn't a type variable." );864 variable.initializer = init;865 return this;866 }867 868 859 DeclarationNode * DeclarationNode::cloneType( string * newName ) { 869 860 DeclarationNode * newnode = new DeclarationNode; … … 1023 1014 assertf( sizeof(kindMap)/sizeof(kindMap[0] == NoTypeClass-1), "DeclarationNode::build: kindMap is out of sync." ); 1024 1015 assertf( variable.tyClass < sizeof(kindMap)/sizeof(kindMap[0]), "Variable's tyClass is out of bounds." ); 1025 TypeDecl * ret = new TypeDecl( *name, Type::StorageClasses(), nullptr, kindMap[ variable.tyClass ] , variable.initializer ? variable.initializer->buildType() : nullptr);1016 TypeDecl * ret = new TypeDecl( *name, Type::StorageClasses(), nullptr, kindMap[ variable.tyClass ] ); 1026 1017 buildList( variable.assertions, ret->get_assertions() ); 1027 1018 return ret;
Note:
See TracChangeset
for help on using the changeset viewer.