Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Print.cpp

    r79c907b ra8ed717  
    128128
    129129        void print( const ast::Expr::InferUnion & inferred, unsigned level = 0 ) {
    130                 if (inferred.data.resnSlots && !inferred.data.resnSlots->empty()) {
    131                         os << indent << "with " << inferred.data.resnSlots->size()
     130                switch ( inferred.mode ) {
     131                case ast::Expr::InferUnion::Empty: return;
     132                case ast::Expr::InferUnion::Slots: {
     133                        os << indent << "with " << inferred.data.resnSlots.size()
    132134                           << " pending inference slots" << endl;
    133                 }
    134                 if (inferred.data.inferParams && !inferred.data.inferParams->empty()) {
     135                        return;
     136                }
     137                case ast::Expr::InferUnion::Params: {
    135138                        os << indent << "with inferred parameters " << level << ":" << endl;
    136139                        ++indent;
    137                         for ( const auto & i : *inferred.data.inferParams ) {
     140                        for ( const auto & i : inferred.data.inferParams ) {
    138141                                os << indent;
    139                                 short_print( i.second.declptr );
     142                                short_print( Decl::fromId( i.second.decl ) );
    140143                                os << endl;
    141144                                print( i.second.expr->inferred, level+1 );
    142145                        }
    143146                        --indent;
     147                        return;
     148                }
    144149                }
    145150        }
     
    227232                }
    228233
    229                 if ( ! node->assertions.empty() ) {
     234                if ( ! short_mode && ! node->assertions.empty() ) {
    230235                        os << endl << indent << "... with assertions" << endl;
    231236                        ++indent;
Note: See TracChangeset for help on using the changeset viewer.