Ignore:
Timestamp:
Jun 25, 2019, 11:26:30 AM (5 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
bcb311b
Parents:
28af389
Message:

Fix ast::Pass guard classes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Tuples/TupleAssignment.cc

    r28af389 r9ea38de  
    464464                                        // resolve ctor/dtor for the new object
    465465                                        ast::ptr< ast::Init > ctorInit = ResolvExpr::resolveCtorInit(
    466                                                         InitTweak::genCtorInit( location, ret ), spotter.crntFinder.symtab );
     466                                                        InitTweak::genCtorInit( location, ret ), spotter.crntFinder.localSyms );
    467467                                        // remove environments from subexpressions of stmtExpr
    468468                                        ast::Pass< EnvRemover > rm{ env };
     
    559559                                        // resolve the cast expression so that rhsCand return type is bound by the cast
    560560                                        // type as needed, and transfer the resulting environment
    561                                         ResolvExpr::CandidateFinder finder{ spotter.crntFinder.symtab, env };
     561                                        ResolvExpr::CandidateFinder finder{ spotter.crntFinder.localSyms, env };
    562562                                        finder.find( rhsCand->expr, ResolvExpr::ResolvMode::withAdjustment() );
    563563                                        assert( finder.candidates.size() == 1 );
     
    608608                                        // explode the LHS so that each field of a tuple-valued expr is assigned
    609609                                        ResolvExpr::CandidateList lhs;
    610                                         explode( *lhsCand, crntFinder.symtab, back_inserter(lhs), true );
     610                                        explode( *lhsCand, crntFinder.localSyms, back_inserter(lhs), true );
    611611                                        for ( ResolvExpr::CandidateRef & cand : lhs ) {
    612612                                                // each LHS value must be a reference - some come in with a cast, if not
     
    628628                                                        if ( isTuple( rhsCand->expr ) ) {
    629629                                                                // multiple assignment
    630                                                                 explode( *rhsCand, crntFinder.symtab, back_inserter(rhs), true );
     630                                                                explode( *rhsCand, crntFinder.localSyms, back_inserter(rhs), true );
    631631                                                                matcher.reset(
    632632                                                                        new MultipleAssignMatcher{ *this, expr->location, lhs, rhs } );
     
    647647                                                        // multiple assignment
    648648                                                        ResolvExpr::CandidateList rhs;
    649                                                         explode( rhsCand, crntFinder.symtab, back_inserter(rhs), true );
     649                                                        explode( rhsCand, crntFinder.localSyms, back_inserter(rhs), true );
    650650                                                        matcher.reset(
    651651                                                                new MultipleAssignMatcher{ *this, expr->location, lhs, rhs } );
     
    677677                                )
    678678
    679                                 ResolvExpr::CandidateFinder finder{ crntFinder.symtab, matcher->env };
     679                                ResolvExpr::CandidateFinder finder{ crntFinder.localSyms, matcher->env };
    680680
    681681                                try {
Note: See TracChangeset for help on using the changeset viewer.