summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaOverload.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-05-08 18:20:53 +0000
committerDouglas Gregor <dgregor@apple.com>2010-05-08 18:20:53 +0000
commit461761d68f7393ef5205c6493a36c15ac79f6c71 (patch)
tree52cf1efcc29a46ed820e42c7bd5397f46dcc0f5e /clang/lib/Sema/SemaOverload.cpp
parent02eb4835ce7daa66d27d6422aa6dea343dc52895 (diff)
downloadbcm5719-llvm-461761d68f7393ef5205c6493a36c15ac79f6c71.tar.gz
bcm5719-llvm-461761d68f7393ef5205c6493a36c15ac79f6c71.zip
Minor cleanup, and ban copying of OverloadCandidateSets. No
functionality change. llvm-svn: 103342
Diffstat (limited to 'clang/lib/Sema/SemaOverload.cpp')
-rw-r--r--clang/lib/Sema/SemaOverload.cpp27
1 files changed, 13 insertions, 14 deletions
diff --git a/clang/lib/Sema/SemaOverload.cpp b/clang/lib/Sema/SemaOverload.cpp
index 93e9c7f4e79..6f7063b98f3 100644
--- a/clang/lib/Sema/SemaOverload.cpp
+++ b/clang/lib/Sema/SemaOverload.cpp
@@ -296,13 +296,14 @@ static MakeDeductionFailureInfo(Sema::TemplateDeductionResult TDK,
switch (TDK) {
case Sema::TDK_Success:
case Sema::TDK_InstantiationDepth:
+ case Sema::TDK_TooManyArguments:
+ case Sema::TDK_TooFewArguments:
break;
case Sema::TDK_Incomplete:
Result.Data = Info.Param.getOpaqueValue();
break;
- // Unhandled
case Sema::TDK_Inconsistent:
case Sema::TDK_InconsistentQuals: {
DFIParamWithArguments *Saved = new DFIParamWithArguments;
@@ -315,8 +316,6 @@ static MakeDeductionFailureInfo(Sema::TemplateDeductionResult TDK,
case Sema::TDK_SubstitutionFailure:
case Sema::TDK_NonDeducedMismatch:
- case Sema::TDK_TooManyArguments:
- case Sema::TDK_TooFewArguments:
case Sema::TDK_InvalidExplicitArguments:
case Sema::TDK_FailedOverloadResolution:
break;
@@ -330,19 +329,19 @@ void OverloadCandidate::DeductionFailureInfo::Destroy() {
case Sema::TDK_Success:
case Sema::TDK_InstantiationDepth:
case Sema::TDK_Incomplete:
+ case Sema::TDK_TooManyArguments:
+ case Sema::TDK_TooFewArguments:
break;
- // Unhandled
case Sema::TDK_Inconsistent:
case Sema::TDK_InconsistentQuals:
delete static_cast<DFIParamWithArguments*>(Data);
Data = 0;
break;
+ // Unhandled
case Sema::TDK_SubstitutionFailure:
case Sema::TDK_NonDeducedMismatch:
- case Sema::TDK_TooManyArguments:
- case Sema::TDK_TooFewArguments:
case Sema::TDK_InvalidExplicitArguments:
case Sema::TDK_FailedOverloadResolution:
break;
@@ -354,6 +353,8 @@ OverloadCandidate::DeductionFailureInfo::getTemplateParameter() {
switch (static_cast<Sema::TemplateDeductionResult>(Result)) {
case Sema::TDK_Success:
case Sema::TDK_InstantiationDepth:
+ case Sema::TDK_TooManyArguments:
+ case Sema::TDK_TooFewArguments:
return TemplateParameter();
case Sema::TDK_Incomplete:
@@ -366,8 +367,6 @@ OverloadCandidate::DeductionFailureInfo::getTemplateParameter() {
// Unhandled
case Sema::TDK_SubstitutionFailure:
case Sema::TDK_NonDeducedMismatch:
- case Sema::TDK_TooManyArguments:
- case Sema::TDK_TooFewArguments:
case Sema::TDK_InvalidExplicitArguments:
case Sema::TDK_FailedOverloadResolution:
break;
@@ -381,17 +380,17 @@ const TemplateArgument *OverloadCandidate::DeductionFailureInfo::getFirstArg() {
case Sema::TDK_Success:
case Sema::TDK_InstantiationDepth:
case Sema::TDK_Incomplete:
+ case Sema::TDK_TooManyArguments:
+ case Sema::TDK_TooFewArguments:
return 0;
- // Unhandled
case Sema::TDK_Inconsistent:
case Sema::TDK_InconsistentQuals:
return &static_cast<DFIParamWithArguments*>(Data)->FirstArg;
+ // Unhandled
case Sema::TDK_SubstitutionFailure:
case Sema::TDK_NonDeducedMismatch:
- case Sema::TDK_TooManyArguments:
- case Sema::TDK_TooFewArguments:
case Sema::TDK_InvalidExplicitArguments:
case Sema::TDK_FailedOverloadResolution:
break;
@@ -406,17 +405,17 @@ OverloadCandidate::DeductionFailureInfo::getSecondArg() {
case Sema::TDK_Success:
case Sema::TDK_InstantiationDepth:
case Sema::TDK_Incomplete:
+ case Sema::TDK_TooManyArguments:
+ case Sema::TDK_TooFewArguments:
return 0;
- // Unhandled
case Sema::TDK_Inconsistent:
case Sema::TDK_InconsistentQuals:
return &static_cast<DFIParamWithArguments*>(Data)->SecondArg;
+ // Unhandled
case Sema::TDK_SubstitutionFailure:
case Sema::TDK_NonDeducedMismatch:
- case Sema::TDK_TooManyArguments:
- case Sema::TDK_TooFewArguments:
case Sema::TDK_InvalidExplicitArguments:
case Sema::TDK_FailedOverloadResolution:
break;
OpenPOWER on IntegriCloud