Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Tuples/TupleAssignment.cc

    r78315272 rbd4f2e9  
    9595        bool isTuple( Expression *expr ) {
    9696                if ( ! expr ) return false;
    97                 assert( expr->has_result() );
     97                assert( expr->result );
    9898                return dynamic_cast< TupleType * >( expr->get_result()->stripReferences() );
    9999        }
     
    251251                // combine assignment environments into combined expression environment
    252252                simpleCombineEnvironments( current.begin(), current.end(), matcher->compositeEnv );
    253                 currentFinder.get_alternatives().push_front( ResolvExpr::Alternative(
     253                // xxx -- was push_front
     254                currentFinder.get_alternatives().push_back( ResolvExpr::Alternative(
    254255                        new TupleAssignExpr(solved_assigns, matcher->tmpDecls), matcher->compositeEnv,
    255256                        ResolvExpr::sumCost( current ) + matcher->baseCost ) );
     
    285286
    286287        ObjectDecl * TupleAssignSpotter::Matcher::newObject( UniqueName & namer, Expression * expr ) {
    287                 assert( expr->has_result() && ! expr->get_result()->isVoid() );
     288                assert( expr->result && ! expr->get_result()->isVoid() );
    288289                ObjectDecl * ret = new ObjectDecl( namer.newName(), Type::StorageClasses(), LinkageSpec::Cforall, nullptr, expr->get_result()->clone(), new SingleInit( expr->clone() ) );
    289290                // if expression type is a reference, don't need to construct anything, a simple initializer is sufficient.
     
    295296                        ctorInit->accept( rm );
    296297                }
     298                PRINT( std::cerr << "new object: " << ret << std::endl; )
    297299                return ret;
    298300        }
Note: See TracChangeset for help on using the changeset viewer.