diff options
author | Kaelyn Uhrain <rikka@google.com> | 2013-12-16 19:19:18 +0000 |
---|---|---|
committer | Kaelyn Uhrain <rikka@google.com> | 2013-12-16 19:19:18 +0000 |
commit | a6c78feba6c20ab3830f513ef502004101e2f9a3 (patch) | |
tree | 59b87113ec90e234c9d27536ea33e85a1c82d0e9 /clang/lib/Sema/SemaCXXScopeSpec.cpp | |
parent | a1c32d53fb7c7561c742450a754357b8a79c217a (diff) | |
download | bcm5719-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.cpp | 2 |
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()); |