summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaCXXScopeSpec.cpp
diff options
context:
space:
mode:
authorKaelyn Uhrain <rikka@google.com>2013-12-16 19:19:18 +0000
committerKaelyn Uhrain <rikka@google.com>2013-12-16 19:19:18 +0000
commita6c78feba6c20ab3830f513ef502004101e2f9a3 (patch)
tree59b87113ec90e234c9d27536ea33e85a1c82d0e9 /clang/lib/Sema/SemaCXXScopeSpec.cpp
parenta1c32d53fb7c7561c742450a754357b8a79c217a (diff)
downloadbcm5719-llvm-a6c78feba6c20ab3830f513ef502004101e2f9a3.tar.gz
bcm5719-llvm-a6c78feba6c20ab3830f513ef502004101e2f9a3.zip
Make Sema::BuildCXXNestedNameSpecifier correctly clear the previous
CXXScopeSpec when necessary while performing typo correction. This fixes the crash reported in PR18213 (the problem existed since r185487, and r193020 made it easier to hit). llvm-svn: 197409
Diffstat (limited to 'clang/lib/Sema/SemaCXXScopeSpec.cpp')
-rw-r--r--clang/lib/Sema/SemaCXXScopeSpec.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaCXXScopeSpec.cpp b/clang/lib/Sema/SemaCXXScopeSpec.cpp
index 58bde02d602..15f122ecb10 100644
--- a/clang/lib/Sema/SemaCXXScopeSpec.cpp
+++ b/clang/lib/Sema/SemaCXXScopeSpec.cpp
@@ -497,6 +497,8 @@ bool Sema::BuildCXXNestedNameSpecifier(Scope *S,
bool DroppedSpecifier =
Corrected.WillReplaceSpecifier() &&
Name.getAsString() == Corrected.getAsString(getLangOpts());
+ if (DroppedSpecifier)
+ SS.clear();
diagnoseTypo(Corrected, PDiag(diag::err_no_member_suggest)
<< Name << LookupCtx << DroppedSpecifier
<< SS.getRange());
OpenPOWER on IntegriCloud