diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-05-08 18:20:53 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-05-08 18:20:53 +0000 |
| commit | 461761d68f7393ef5205c6493a36c15ac79f6c71 (patch) | |
| tree | 52cf1efcc29a46ed820e42c7bd5397f46dcc0f5e /clang/lib/Sema/SemaOverload.cpp | |
| parent | 02eb4835ce7daa66d27d6422aa6dea343dc52895 (diff) | |
| download | bcm5719-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.cpp | 27 |
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; |

