summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaTemplate.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-06-29 19:27:42 +0000
committerDouglas Gregor <dgregor@apple.com>2010-06-29 19:27:42 +0000
commitc048c52734ec9ca4e58a7c2ebc5510e423f32ebe (patch)
treef83ea656bcc9aeb1422b08d08291e0924c44fd96 /clang/lib/Sema/SemaTemplate.cpp
parentcccaad95847a4cfd024668de8e944e0dfcf28634 (diff)
downloadbcm5719-llvm-c048c52734ec9ca4e58a7c2ebc5510e423f32ebe.tar.gz
bcm5719-llvm-c048c52734ec9ca4e58a7c2ebc5510e423f32ebe.zip
When typo correction produces a result that is not of the kind we're
looking for, reset the name within the LookupResult structure in addition to clearing out the results. Fixes PR7508. llvm-svn: 107197
Diffstat (limited to 'clang/lib/Sema/SemaTemplate.cpp')
-rw-r--r--clang/lib/Sema/SemaTemplate.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
index 735809f1854..7e5377ab9a9 100644
--- a/clang/lib/Sema/SemaTemplate.cpp
+++ b/clang/lib/Sema/SemaTemplate.cpp
@@ -258,7 +258,7 @@ void Sema::LookupTemplateName(LookupResult &Found,
// If we did not find any names, attempt to correct any typos.
DeclarationName Name = Found.getLookupName();
if (DeclarationName Corrected = CorrectTypo(Found, S, &SS, LookupCtx,
- false, CTC_CXXCasts)) {
+ false, CTC_CXXCasts)) {
FilterAcceptableTemplateNames(Context, Found);
if (!Found.empty()) {
if (LookupCtx)
@@ -277,6 +277,7 @@ void Sema::LookupTemplateName(LookupResult &Found,
}
} else {
Found.clear();
+ Found.setLookupName(Name);
}
}
OpenPOWER on IntegriCloud