Changes in src/SymTab/Validate.cc [40e636a:956a9c77]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SymTab/Validate.cc
r40e636a r956a9c77 174 174 175 175 virtual void visit( FunctionDecl *funcDecl ); 176 176 }; 177 177 178 178 class CompoundLiteral : public GenPoly::DeclMutator { … … 191 191 EliminateTypedef::eliminateTypedef( translationUnit ); 192 192 HoistStruct::hoistStruct( translationUnit ); 193 autogenerateRoutines( translationUnit ); // moved up, used to be below compoundLiteral - currently needs Pass1194 193 acceptAll( translationUnit, pass1 ); 195 194 acceptAll( translationUnit, pass2 ); 196 195 ReturnChecker::checkFunctionReturns( translationUnit ); 197 compoundliteral.mutateDeclarationList( translationUnit ); 196 mutateAll( translationUnit, compoundliteral ); 197 autogenerateRoutines( translationUnit ); 198 198 acceptAll( translationUnit, pass3 ); 199 199 VerifyCtorDtor::verify( translationUnit ); … … 490 490 EliminateTypedef eliminator; 491 491 mutateAll( translationUnit, eliminator ); 492 if ( eliminator.typedefNames.count( "size_t" ) ) {493 // grab and remember declaration of size_t494 SizeType = eliminator.typedefNames["size_t"].first->get_base()->clone();495 } else {496 // xxx - missing global typedef for size_t - default to long unsigned int, even though that may be wrong497 // eventually should have a warning for this case.498 SizeType = new BasicType( Type::Qualifiers(), BasicType::LongUnsignedInt );499 }500 492 filter( translationUnit, isTypedef, true ); 501 502 493 } 503 494 … … 527 518 Declaration *EliminateTypedef::mutate( TypedefDecl * tyDecl ) { 528 519 Declaration *ret = Mutator::mutate( tyDecl ); 529 530 520 if ( typedefNames.count( tyDecl->get_name() ) == 1 && typedefNames[ tyDecl->get_name() ].second == scopeLevel ) { 531 521 // typedef to the same name from the same scope
Note:
See TracChangeset
for help on using the changeset viewer.