r190444 - getMostSpecialized for function template sets is never used in the context of a
Richard Smith
richard-llvm at metafoo.co.uk
Tue Sep 10 15:59:25 PDT 2013
Author: rsmith
Date: Tue Sep 10 17:59:25 2013
New Revision: 190444
URL: http://llvm.org/viewvc/llvm-project?rev=190444&view=rev
Log:
getMostSpecialized for function template sets is never used in the context of a
call; remove its 'number of explicit arguments' and 'what kind of call'
parameters.
Modified:
cfe/trunk/include/clang/Sema/Sema.h
cfe/trunk/lib/Sema/SemaOverload.cpp
cfe/trunk/lib/Sema/SemaTemplate.cpp
cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp
Modified: cfe/trunk/include/clang/Sema/Sema.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Sema.h?rev=190444&r1=190443&r2=190444&view=diff
==============================================================================
--- cfe/trunk/include/clang/Sema/Sema.h (original)
+++ cfe/trunk/include/clang/Sema/Sema.h Tue Sep 10 17:59:25 2013
@@ -5836,8 +5836,7 @@ public:
UnresolvedSetIterator
getMostSpecialized(UnresolvedSetIterator SBegin, UnresolvedSetIterator SEnd,
TemplateSpecCandidateSet &FailedCandidates,
- TemplatePartialOrderingContext TPOC,
- unsigned NumCallArguments, SourceLocation Loc,
+ SourceLocation Loc,
const PartialDiagnostic &NoneDiag,
const PartialDiagnostic &AmbigDiag,
const PartialDiagnostic &CandidateDiag,
Modified: cfe/trunk/lib/Sema/SemaOverload.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaOverload.cpp?rev=190444&r1=190443&r2=190444&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaOverload.cpp (original)
+++ cfe/trunk/lib/Sema/SemaOverload.cpp Tue Sep 10 17:59:25 2013
@@ -9491,7 +9491,7 @@ private:
// TODO: It looks like FailedCandidates does not serve much purpose
// here, since the no_viable diagnostic has index 0.
UnresolvedSetIterator Result = S.getMostSpecialized(
- MatchesCopy.begin(), MatchesCopy.end(), FailedCandidates, TPOC_Other, 0,
+ MatchesCopy.begin(), MatchesCopy.end(), FailedCandidates,
SourceExpr->getLocStart(), S.PDiag(),
S.PDiag(diag::err_addr_ovl_ambiguous) << Matches[0]
.second->getDeclName(),
Modified: cfe/trunk/lib/Sema/SemaTemplate.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaTemplate.cpp?rev=190444&r1=190443&r2=190444&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaTemplate.cpp (original)
+++ cfe/trunk/lib/Sema/SemaTemplate.cpp Tue Sep 10 17:59:25 2013
@@ -6456,7 +6456,7 @@ bool Sema::CheckFunctionTemplateSpeciali
// Find the most specialized function template.
UnresolvedSetIterator Result = getMostSpecialized(
- Candidates.begin(), Candidates.end(), FailedCandidates, TPOC_Other, 0,
+ Candidates.begin(), Candidates.end(), FailedCandidates,
FD->getLocation(),
PDiag(diag::err_function_template_spec_no_match) << FD->getDeclName(),
PDiag(diag::err_function_template_spec_ambiguous)
@@ -7384,7 +7384,7 @@ DeclResult Sema::ActOnExplicitInstantiat
// Find the most specialized function template specialization.
UnresolvedSetIterator Result = getMostSpecialized(
- Matches.begin(), Matches.end(), FailedCandidates, TPOC_Other, 0,
+ Matches.begin(), Matches.end(), FailedCandidates,
D.getIdentifierLoc(),
PDiag(diag::err_explicit_instantiation_not_known) << Name,
PDiag(diag::err_explicit_instantiation_ambiguous) << Name,
Modified: cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp?rev=190444&r1=190443&r2=190444&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp (original)
+++ cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp Tue Sep 10 17:59:25 2013
@@ -4311,7 +4311,6 @@ static bool isSameTemplate(TemplateDecl
UnresolvedSetIterator Sema::getMostSpecialized(
UnresolvedSetIterator SpecBegin, UnresolvedSetIterator SpecEnd,
TemplateSpecCandidateSet &FailedCandidates,
- TemplatePartialOrderingContext TPOC, unsigned NumCallArguments,
SourceLocation Loc, const PartialDiagnostic &NoneDiag,
const PartialDiagnostic &AmbigDiag, const PartialDiagnostic &CandidateDiag,
bool Complain, QualType TargetType) {
@@ -4337,7 +4336,7 @@ UnresolvedSetIterator Sema::getMostSpeci
= cast<FunctionDecl>(*I)->getPrimaryTemplate();
assert(Challenger && "Not a function template specialization?");
if (isSameTemplate(getMoreSpecializedTemplate(BestTemplate, Challenger,
- Loc, TPOC, NumCallArguments),
+ Loc, TPOC_Other, 0),
Challenger)) {
Best = I;
BestTemplate = Challenger;
@@ -4352,7 +4351,7 @@ UnresolvedSetIterator Sema::getMostSpeci
= cast<FunctionDecl>(*I)->getPrimaryTemplate();
if (I != Best &&
!isSameTemplate(getMoreSpecializedTemplate(BestTemplate, Challenger,
- Loc, TPOC, NumCallArguments),
+ Loc, TPOC_Other, 0),
BestTemplate)) {
Ambiguous = true;
break;
More information about the cfe-commits
mailing list