Ignore:
Timestamp:
Jun 12, 2019, 4:06:37 PM (5 years ago)
Author:
Thierry Delisle <tdelisle@…>
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.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/AlternativeFinder.cc

    raaeacf4 r21300d7  
    2929#include "AlternativeFinder.h"
    3030#include "AST/Expr.hpp"
     31#include "AST/SymbolTable.hpp"
    3132#include "AST/Type.hpp"
    3233#include "Common/SemanticError.h"  // for SemanticError
     
    115116                /// Finds matching alternatives for a function, given a set of arguments
    116117                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 );
    118119                /// Sets up parameter inference for an output alternative
    119120                template< typename OutputIterator >
     
    266267                        SemanticError( expr, "No reasonable alternatives for expression " );
    267268                }
    268                 if ( mode.resolveAssns || mode.prune ) {
     269                if ( mode.satisfyAssns || mode.prune ) {
    269270                        // trim candidates just to those where the assertions resolve
    270271                        // - necessary pre-requisite to pruning
     
    592593
    593594                /// 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 {
    595596                        return args[nextArg-1][explAlt];
    596597                }
     
    616617        /// Instantiates an argument to match a formal, returns false if no results left
    617618        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,
    619620                        const SymTab::Indexer& indexer, unsigned nTuples = 0 ) {
    620621                if ( TupleType * tupleType = dynamic_cast<TupleType*>( formalType ) ) {
     
    888889        template<typename OutputIterator>
    889890        void AlternativeFinder::Finder::makeFunctionAlternatives( const Alternative &func,
    890                         FunctionType *funcType, const ExplodedArgs &args, OutputIterator out ) {
     891                        FunctionType *funcType, const ExplodedArgs_old &args, OutputIterator out ) {
    891892                OpenVarSet funcOpenVars;
    892893                AssertionSet funcNeed, funcHave;
     
    10201021
    10211022                // pre-explode arguments
    1022                 ExplodedArgs argExpansions;
     1023                ExplodedArgs_old argExpansions;
    10231024                argExpansions.reserve( argAlternatives.size() );
    10241025
Note: See TracChangeset for help on using the changeset viewer.