Changes in src/AST/Pass.impl.hpp [6739590:1df492a]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Pass.impl.hpp
r6739590 r1df492a 182 182 183 183 // get the stmts/decls that will need to be spliced in 184 auto stmts_before = __pass::stmtsToAddBefore( core, 0 185 auto stmts_after = __pass::stmtsToAddAfter ( core, 0 186 auto decls_before = __pass::declsToAddBefore( core, 0 187 auto decls_after = __pass::declsToAddAfter ( core, 0 184 auto stmts_before = __pass::stmtsToAddBefore( core, 0); 185 auto stmts_after = __pass::stmtsToAddAfter ( core, 0); 186 auto decls_before = __pass::declsToAddBefore( core, 0); 187 auto decls_after = __pass::declsToAddAfter ( core, 0); 188 188 189 189 // These may be modified by subnode but most be restored once we exit this statemnet. … … 287 287 288 288 // get the stmts/decls that will need to be spliced in 289 auto stmts_before = __pass::stmtsToAddBefore( core, 0 290 auto stmts_after = __pass::stmtsToAddAfter ( core, 0 291 auto decls_before = __pass::declsToAddBefore( core, 0 292 auto decls_after = __pass::declsToAddAfter ( core, 0 289 auto stmts_before = __pass::stmtsToAddBefore( core, 0); 290 auto stmts_after = __pass::stmtsToAddAfter ( core, 0); 291 auto decls_before = __pass::declsToAddBefore( core, 0); 292 auto decls_after = __pass::declsToAddAfter ( core, 0); 293 293 294 294 // These may be modified by subnode but most be restored once we exit this statemnet. … … 317 317 assert(( empty( stmts_before ) && empty( stmts_after )) 318 318 || ( empty( decls_before ) && empty( decls_after )) ); 319 320 319 321 320 322 // Take all the statements which should have gone after, N/A for first iteration … … 648 650 if ( __visit_children() ) { 649 651 // unlike structs, traits, and unions, enums inject their members into the global scope 652 maybe_accept( node, &EnumDecl::base ); 650 653 maybe_accept( node, &EnumDecl::params ); 651 654 maybe_accept( node, &EnumDecl::members ); … … 2113 2116 if ( __visit_children() ) { 2114 2117 bool mutated = false; 2115 ast::TypeSubstitution::TypeMapnew_map;2116 for ( const auto & p : node->type Map) {2118 std::unordered_map< ast::TypeInstType::TypeEnvKey, ast::ptr< ast::Type > > new_map; 2119 for ( const auto & p : node->typeEnv ) { 2117 2120 guard_symtab guard { *this }; 2118 2121 auto new_node = p.second->accept( *this ); … … 2122 2125 if (mutated) { 2123 2126 auto new_node = __pass::mutate<core_t>( node ); 2124 new_node->type Map.swap( new_map );2127 new_node->typeEnv.swap( new_map ); 2125 2128 node = new_node; 2126 2129 }
Note: See TracChangeset
for help on using the changeset viewer.