Changes in src/main.cc [4615ac8:0e464f6]
- File:
-
- 1 edited
-
src/main.cc (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/main.cc
r4615ac8 r0e464f6 59 59 #include "ResolvExpr/Resolver.h" // for resolve 60 60 #include "SymTab/Validate.h" // for validate 61 #include "SynTree/TopLvalue.h" // for assertTopLvalue, clearInn...62 61 #include "SynTree/Declaration.h" // for Declaration 63 62 #include "SynTree/Visitor.h" // for acceptAll 64 63 #include "Tuples/Tuples.h" // for expandMemberTuples, expan... 65 64 #include "Virtual/ExpandCasts.h" // for expandCasts 66 67 65 68 66 using namespace std; … … 259 257 Stats::Time::StopBlock(); 260 258 261 //std::cerr << "Post-Parse Check" << std::endl;262 clearInnerLvalue( translationUnit );263 assertTopLvalue( translationUnit );264 265 259 // add the assignment statement after the initialization of a type parameter 266 260 PASS( "Validate", SymTab::validate( translationUnit, symtabp ) ); … … 281 275 } // if 282 276 283 assertTopLvalue( translationUnit );284 277 PASS( "Fix Labels", ControlStruct::fixLabels( translationUnit ) ); 285 assertTopLvalue( translationUnit );286 278 PASS( "Fix Names", CodeGen::fixNames( translationUnit ) ); 287 assertTopLvalue( translationUnit );288 279 PASS( "Gen Init", InitTweak::genInit( translationUnit ) ); 289 assertTopLvalue( translationUnit );290 280 PASS( "Expand Member Tuples" , Tuples::expandMemberTuples( translationUnit ) ); 291 assertTopLvalue( translationUnit );292 281 if ( libcfap ) { 293 282 // generate the bodies of cfa library functions … … 313 302 } // if 314 303 315 assertTopLvalue( translationUnit );316 317 304 PASS( "Resolve", ResolvExpr::resolve( translationUnit ) ); 318 305 if ( exprp ) { … … 321 308 } // if 322 309 323 clearInnerLvalue( translationUnit );324 assertTopLvalue( translationUnit );325 326 310 // fix ObjectDecl - replaces ConstructorInit nodes 327 311 PASS( "Fix Init", InitTweak::fix( translationUnit, buildingLibrary() ) ); 328 clearInnerLvalue( translationUnit );329 assertTopLvalue( translationUnit );330 312 if ( ctorinitp ) { 331 313 dump ( translationUnit ); … … 334 316 335 317 PASS( "Expand Unique Expr", Tuples::expandUniqueExpr( translationUnit ) ); // xxx - is this the right place for this? want to expand ASAP so tha, sequent passes don't need to worry about double-visiting a unique expr - needs to go after InitTweak::fix so that copy constructed return declarations are reused 336 assertTopLvalue( translationUnit );337 318 338 319 PASS( "Translate EHM" , ControlStruct::translateEHM( translationUnit ) ); 339 assertTopLvalue( translationUnit );340 320 341 321 PASS( "Gen Waitfor" , Concurrency::generateWaitFor( translationUnit ) ); 342 clearInnerLvalue( translationUnit );343 assertTopLvalue( translationUnit );344 322 345 323 PASS( "Convert Specializations", GenPoly::convertSpecializations( translationUnit ) ); // needs to happen before tuple types are expanded 346 clearInnerLvalue( translationUnit );347 assertTopLvalue( translationUnit );348 324 349 325 PASS( "Expand Tuples", Tuples::expandTuples( translationUnit ) ); // xxx - is this the right place for this? 350 assertTopLvalue( translationUnit );351 326 352 327 if ( tuplep ) { … … 356 331 357 332 PASS( "Virtual Expand Casts", Virtual::expandCasts( translationUnit ) ); // Must come after translateEHM 358 assertTopLvalue( translationUnit );359 333 360 334 PASS( "Instantiate Generics", GenPoly::instantiateGeneric( translationUnit ) ); … … 363 337 return EXIT_SUCCESS; 364 338 } // if 365 clearInnerLvalue( translationUnit );366 assertTopLvalue( translationUnit );367 339 PASS( "Convert L-Value", GenPoly::convertLvalue( translationUnit ) ); 368 clearInnerLvalue( translationUnit ); 369 assertTopLvalue( translationUnit ); 340 370 341 371 342 if ( bboxp ) { … … 374 345 } // if 375 346 PASS( "Box", GenPoly::box( translationUnit ) ); 376 clearInnerLvalue( translationUnit );377 assertTopLvalue( translationUnit );378 347 379 348 if ( bcodegenp ) { … … 387 356 388 357 CodeTools::fillLocations( translationUnit ); 389 assertTopLvalue( translationUnit );390 358 PASS( "Code Gen", CodeGen::generate( translationUnit, *output, ! genproto, prettycodegenp, true, linemarks ) ); 391 359
Note:
See TracChangeset
for help on using the changeset viewer.