Changeset 21300d7 for src/ResolvExpr/AlternativeFinder.cc
- Timestamp:
- Jun 12, 2019, 4:06:37 PM (5 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 462a7c7, d60780c
- Parents:
- aaeacf4 (diff), 6625727 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/AlternativeFinder.cc
raaeacf4 r21300d7 29 29 #include "AlternativeFinder.h" 30 30 #include "AST/Expr.hpp" 31 #include "AST/SymbolTable.hpp" 31 32 #include "AST/Type.hpp" 32 33 #include "Common/SemanticError.h" // for SemanticError … … 115 116 /// Finds matching alternatives for a function, given a set of arguments 116 117 template<typename OutputIterator> 117 void makeFunctionAlternatives( const Alternative &func, FunctionType *funcType, const ExplodedArgs & args, OutputIterator out );118 void makeFunctionAlternatives( const Alternative &func, FunctionType *funcType, const ExplodedArgs_old& args, OutputIterator out ); 118 119 /// Sets up parameter inference for an output alternative 119 120 template< typename OutputIterator > … … 266 267 SemanticError( expr, "No reasonable alternatives for expression " ); 267 268 } 268 if ( mode. resolveAssns || mode.prune ) {269 if ( mode.satisfyAssns || mode.prune ) { 269 270 // trim candidates just to those where the assertions resolve 270 271 // - necessary pre-requisite to pruning … … 592 593 593 594 /// Gets the list of exploded alternatives for this pack 594 const ExplodedActual& getExpl( const ExplodedArgs & args ) const {595 const ExplodedActual& getExpl( const ExplodedArgs_old& args ) const { 595 596 return args[nextArg-1][explAlt]; 596 597 } … … 616 617 /// Instantiates an argument to match a formal, returns false if no results left 617 618 bool instantiateArgument( Type* formalType, Initializer* initializer, 618 const ExplodedArgs & args, std::vector<ArgPack>& results, std::size_t& genStart,619 const ExplodedArgs_old& args, std::vector<ArgPack>& results, std::size_t& genStart, 619 620 const SymTab::Indexer& indexer, unsigned nTuples = 0 ) { 620 621 if ( TupleType * tupleType = dynamic_cast<TupleType*>( formalType ) ) { … … 888 889 template<typename OutputIterator> 889 890 void AlternativeFinder::Finder::makeFunctionAlternatives( const Alternative &func, 890 FunctionType *funcType, const ExplodedArgs &args, OutputIterator out ) {891 FunctionType *funcType, const ExplodedArgs_old &args, OutputIterator out ) { 891 892 OpenVarSet funcOpenVars; 892 893 AssertionSet funcNeed, funcHave; … … 1020 1021 1021 1022 // pre-explode arguments 1022 ExplodedArgs argExpansions;1023 ExplodedArgs_old argExpansions; 1023 1024 argExpansions.reserve( argAlternatives.size() ); 1024 1025
Note: See TracChangeset
for help on using the changeset viewer.