summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaCXXScopeSpec.cpp
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2016-02-16 19:16:20 +0000
committerReid Kleckner <rnk@google.com>2016-02-16 19:16:20 +0000
commit4ce625c8147003fcda203421d6e572923aac7efb (patch)
tree17eaa36c5ccc9364515f9dfe6b79b6ecd2922433 /clang/lib/Sema/SemaCXXScopeSpec.cpp
parent8714c125e8a80d6ea99ab1c044a506bbf8d77406 (diff)
downloadbcm5719-llvm-4ce625c8147003fcda203421d6e572923aac7efb.tar.gz
bcm5719-llvm-4ce625c8147003fcda203421d6e572923aac7efb.zip
[typo-correction] Apply name specifier corrections when forming a NNS
Previously we would leave behind the old name specifier prefix, which creates an invalid AST. Other callers of CorrectTypo update their CXXScopeSpec objects with the correction specifier if one is present. llvm-svn: 260993
Diffstat (limited to 'clang/lib/Sema/SemaCXXScopeSpec.cpp')
-rw-r--r--clang/lib/Sema/SemaCXXScopeSpec.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaCXXScopeSpec.cpp b/clang/lib/Sema/SemaCXXScopeSpec.cpp
index f7aace625a9..2e774dd28ce 100644
--- a/clang/lib/Sema/SemaCXXScopeSpec.cpp
+++ b/clang/lib/Sema/SemaCXXScopeSpec.cpp
@@ -606,6 +606,10 @@ bool Sema::BuildCXXNestedNameSpecifier(Scope *S,
diagnoseTypo(Corrected, PDiag(diag::err_undeclared_var_use_suggest)
<< Name);
+ if (Corrected.getCorrectionSpecifier())
+ SS.MakeTrivial(Context, Corrected.getCorrectionSpecifier(),
+ SourceRange(Found.getNameLoc()));
+
if (NamedDecl *ND = Corrected.getFoundDecl())
Found.addDecl(ND);
Found.setLookupName(Corrected.getCorrection());
OpenPOWER on IntegriCloud