Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/AlternativeFinder.cc

    rd29fa5f r4e66a18  
    7575
    7676        namespace {
    77                 void printAlts( const AltList &list, std::ostream &os, unsigned int indentAmt = 0 ) {
    78                         Indenter indent = { Indenter::tabsize, indentAmt };
     77                void printAlts( const AltList &list, std::ostream &os, int indent = 0 ) {
    7978                        for ( AltList::const_iterator i = list.begin(); i != list.end(); ++i ) {
    8079                                i->print( os, indent );
     
    196195                                AltList winners;
    197196                                findMinCost( alternatives.begin(), alternatives.end(), back_inserter( winners ) );
    198                                 stream << "Cannot choose between " << winners.size() << " alternatives for expression\n";
     197                                stream << "Cannot choose between " << winners.size() << " alternatives for expression ";
    199198                                expr->print( stream );
    200                                 stream << "Alternatives are:\n";
    201                                 printAlts( winners, stream, 1 );
     199                                stream << "Alternatives are:";
     200                                printAlts( winners, stream, 8 );
    202201                                throw SemanticError( stream.str() );
    203202                        }
     
    729728                PRINT(
    730729                        std::cerr << "known function ops:" << std::endl;
    731                         printAlts( funcOpFinder.alternatives, std::cerr, 1 );
     730                        printAlts( funcOpFinder.alternatives, std::cerr, 8 );
    732731                )
    733732
     
    839838        bool isLvalue( Expression *expr ) {
    840839                // xxx - recurse into tuples?
    841                 return expr->result && ( expr->get_result()->get_lvalue() || dynamic_cast< ReferenceType * >( expr->get_result() ) );
     840                return expr->has_result() && ( expr->get_result()->get_lvalue() || dynamic_cast< ReferenceType * >( expr->get_result() ) );
    842841        }
    843842
     
    973972                PRINT( std::cerr << "nameExpr is " << nameExpr->get_name() << std::endl; )
    974973                for ( std::list< DeclarationWithType* >::iterator i = declList.begin(); i != declList.end(); ++i ) {
    975                         VariableExpr newExpr( *i );
     974                        VariableExpr newExpr( *i, nameExpr->get_argName() );
    976975                        alternatives.push_back( Alternative( newExpr.clone(), env, Cost::zero ) );
    977976                        PRINT(
Note: See TracChangeset for help on using the changeset viewer.