Changes in src/SymTab/Validate.cc [4e06c1e:74d1804]
- File:
-
- 1 edited
-
src/SymTab/Validate.cc (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/SymTab/Validate.cc
r4e06c1e r74d1804 9 9 // Author : Richard C. Bilson 10 10 // Created On : Sun May 17 21:50:04 2015 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Tue Jul 12 17:49:21201613 // Update Count : 29 811 // Last Modified By : Rob Schluntz 12 // Last Modified On : Wed May 11 13:17:52 2016 13 // Update Count : 297 14 14 // 15 15 … … 74 74 virtual void visit( CompoundStmt *compoundStmt ); 75 75 virtual void visit( SwitchStmt *switchStmt ); 76 virtual void visit( ChooseStmt *chooseStmt ); 77 // virtual void visit( CaseStmt *caseStmt ); 76 78 private: 77 79 HoistStruct(); … … 266 268 addVisit( switchStmt, *this ); 267 269 } 270 271 void HoistStruct::visit( ChooseStmt *switchStmt ) { 272 addVisit( switchStmt, *this ); 273 } 274 275 // void HoistStruct::visit( CaseStmt *caseStmt ) { 276 // addVisit( caseStmt, *this ); 277 // } 268 278 269 279 void Pass1::visit( EnumDecl *enumDecl ) { … … 541 551 if ( StructInstType *aggDecl = dynamic_cast< StructInstType * >( tyDecl->get_base() ) ) { 542 552 return new StructDecl( aggDecl->get_name() ); 543 // return aggDecl->get_baseStruct();544 553 } else if ( UnionInstType *aggDecl = dynamic_cast< UnionInstType * >( tyDecl->get_base() ) ) { 545 554 return new UnionDecl( aggDecl->get_name() ); … … 636 645 } // if 637 646 } 638 639 647 Declaration *EliminateTypedef::mutate( StructDecl * structDecl ) { 640 648 addImplicitTypedef( structDecl ); … … 683 691 684 692 Visitor::visit( funcDecl ); 693 // original idea: modify signature of ctor/dtors and insert appropriate return statements 694 // to cause desired behaviour 695 // new idea: add comma exprs to every ctor call to produce first parameter. 696 // this requires some memoization of the first parameter, because it can be a 697 // complicated expression with side effects (see: malloc). idea: add temporary variable 698 // that is assigned address of constructed object in ctor argument position and 699 // return the temporary. It should also be done after all implicit ctors are 700 // added, so not in this pass! 685 701 } 686 702
Note:
See TracChangeset
for help on using the changeset viewer.