Changeset b226721
- Timestamp:
- Oct 25, 2017, 5:28:34 PM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- 598f50e
- Parents:
- 4573e3c
- Location:
- src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/GenPoly/Specialize.cc
r4573e3c rb226721 66 66 if ( ! boundType ) continue; 67 67 if ( TypeInstType *typeInst = dynamic_cast< TypeInstType* >( boundType ) ) { 68 // bound to another type variable 68 69 if ( closedVars.find( typeInst->get_name() ) == closedVars.end() ) { 70 // bound to a closed variable => must specialize 69 71 return true; 70 72 } // if 71 73 } else { 74 // variable is bound to a concrete type => must specialize 72 75 return true; 73 76 } // if 74 77 } // for 78 // none of the type variables are bound 75 79 return false; 76 80 } else { 81 // no env 77 82 return false; 78 83 } // if -
src/ResolvExpr/AlternativeFinder.cc
r4573e3c rb226721 680 680 OpenVarSet openVars; 681 681 AssertionSet resultNeed, resultHave; 682 TypeEnvironment resultEnv ;682 TypeEnvironment resultEnv( func.env ); 683 683 makeUnifiableVars( funcType, openVars, resultNeed ); 684 684 resultEnv.add( funcType->get_forall() ); // add all type variables as open variables now so that those not used in the parameter list are still considered open
Note: See TracChangeset
for help on using the changeset viewer.