Changeset 943bfad for src/ResolvExpr
- Timestamp:
- Jul 1, 2021, 12:13:36 PM (4 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 1f45c7d, d5f6a14
- Parents:
- ea593a3
- Location:
- src/ResolvExpr
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified src/ResolvExpr/CandidateFinder.cpp ¶
rea593a3 r943bfad 597 597 const ast::SymbolTable & symtab; 598 598 public: 599 static size_t traceId;599 // static size_t traceId; 600 600 CandidateFinder & selfFinder; 601 601 CandidateList & candidates; … … 890 890 } 891 891 } 892 892 893 893 // if argType is an unbound type parameter, all special functions need to be searched. 894 894 if (isUnboundType(argType)) { … … 1104 1104 // unification run for side-effects 1105 1105 unify( toType, cand->expr->result, cand->env, need, have, open, symtab ); 1106 Cost thisCost = 1106 Cost thisCost = 1107 1107 (castExpr->isGenerated == ast::GeneratedFlag::GeneratedCast) 1108 1108 ? conversionCost( cand->expr->result, toType, cand->expr->get_lvalue(), symtab, cand->env ) … … 1729 1729 found->second.ambiguous = true; 1730 1730 } 1731 } else { 1731 } else { 1732 1732 // xxx - can satisfyAssertions increase the cost? 1733 1733 PRINT( 1734 1734 std::cerr << "cost " << newCand->cost << " loses to " 1735 1735 << found->second.candidate->cost << std::endl; 1736 ) 1736 ) 1737 1737 } 1738 1738 } else { … … 1819 1819 if ( mode.failFast && pruned.empty() ) { 1820 1820 std::ostringstream stream; 1821 if (found) { 1821 if (found) { 1822 1822 CandidateList winners = findMinCost( candidates ); 1823 1823 stream << "Cannot choose between " << winners.size() << " alternatives for " -
TabularUnified src/ResolvExpr/Unify.cc ¶
rea593a3 r943bfad 1044 1044 } 1045 1045 1046 return { new ast::TupleType{ std::move(out) }};1046 return new ast::TupleType{ std::move(out) }; 1047 1047 } 1048 1048
Note: See TracChangeset
for help on using the changeset viewer.