Ignore:
Timestamp:
Jul 27, 2018, 2:41:34 PM (3 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
new-env
Children:
6fa409e
Parents:
5a3e1f1
Message:

Fix open var handling in BF assn resolution; memory usage reasonable again

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/TypeEnvironment.cc

    r5a3e1f1 r1a59641  
    3636
    3737namespace ResolvExpr {
    38         #if 0
     38        #ifdef EXPENSIVE_ENV_VALIDATION
    3939        #define PRE_POST_VALIDATE auto dbg = ValidateGuard{this, __func__};
    4040        #define PRE_POST_VALIDATE_NOM auto dbg = ValidateGuard{this};
     
    411411        }
    412412
    413         bool TypeEnvironment::combine( const TypeEnvironment& o, const SymTab::Indexer& indexer ) {
     413        bool TypeEnvironment::combine( const TypeEnvironment& o, OpenVarSet& openVars,
     414                        const SymTab::Indexer& indexer ) {
    414415                // short-circuit for empty cases
    415416                if ( o.isEmpty() ) return true;
     
    657658                                Type* common = nullptr;
    658659                                AssertionSet need, have;
    659                                 OpenVarSet openVars;
    660660                                if ( unifyInexact( ebound.type->clone(), nbound.type->clone(), *this, need, have,
    661661                                                openVars, WidenMode{ ebound.allowWidening, nbound.allowWidening },
Note: See TracChangeset for help on using the changeset viewer.