Changeset 3d56d15b for src/Parser/TypedefTable.cc
- Timestamp:
- Jun 22, 2018, 2:58:30 PM (6 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, with_gc
- Children:
- 203c667, 63238a4
- Parents:
- 6d43cc57
- git-author:
- Peter A. Buhr <pabuhr@…> (06/22/18 13:56:53)
- git-committer:
- Peter A. Buhr <pabuhr@…> (06/22/18 14:58:30)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/TypedefTable.cc
r6d43cc57 r3d56d15b 10 10 // Created On : Sat May 16 15:20:13 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jun 7 13:17:56201813 // Update Count : 19212 // Last Modified On : Fri Jun 22 06:14:39 2018 13 // Update Count : 206 14 14 // 15 15 … … 78 78 debugPrint( cerr << "Adding current at " << locn << " " << identifier << " as " << kindName( kind ) << " scope " << scope << endl ); 79 79 auto ret = kindTable.insertAt( scope, identifier, kind ); 80 if ( ! ret.second ) ret.first->second = kind; // exists => update 80 //if ( ! ret.second ) ret.first->second = kind; // exists => update 81 assert( ret.first->second == kind ); // exists 81 82 } // TypedefTable::addToScope 82 83 83 84 void TypedefTable::addToEnclosingScope( const string & identifier, int kind, const char * locn __attribute__((unused)) ) { 84 assert( kindTable.currentScope() >= 1 );85 auto scope = kindTable.currentScope() - 1 ;86 debugPrint( cerr << "Adding enclosing at " << locn << " " << identifier << " as " << kindName( kind ) << " scope " << scope << endl );85 assert( kindTable.currentScope() >= 1 + level ); 86 auto scope = kindTable.currentScope() - 1 - level; 87 debugPrint( cerr << "Adding enclosing at " << locn << " " << identifier << " as " << kindName( kind ) << " scope " << scope << " level " << level << endl ); 87 88 auto ret = kindTable.insertAt( scope, identifier, kind ); 88 89 if ( ! ret.second ) ret.first->second = kind; // exists => update … … 91 92 void TypedefTable::enterScope() { 92 93 kindTable.beginScope(); 93 debugPrint( cerr << "Entering scope " << kindTable.currentScope() << endl ); 94 debugPrint( print() ); 94 debugPrint( cerr << "Entering scope " << kindTable.currentScope() << endl; print() ); 95 95 } // TypedefTable::enterScope 96 96 97 97 void TypedefTable::leaveScope() { 98 debugPrint( cerr << "Leaving scope " << kindTable.currentScope() << endl ); 99 debugPrint( print() ); 98 debugPrint( cerr << "Leaving scope " << kindTable.currentScope() << endl; print() ); 100 99 kindTable.endScope(); 101 100 } // TypedefTable::leaveScope … … 114 113 --scope; 115 114 debugPrint( cerr << endl << "[" << scope << "]" ); 116 } 115 } // while 117 116 debugPrint( cerr << endl ); 118 } 117 } // TypedefTable::print 119 118 120 119 // Local Variables: //
Note: See TracChangeset
for help on using the changeset viewer.