summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaLookup.cpp
diff options
context:
space:
mode:
authorKaelyn Uhrain <rikka@google.com>2014-02-05 18:57:51 +0000
committerKaelyn Uhrain <rikka@google.com>2014-02-05 18:57:51 +0000
commit21a6617c34c4c15183b5edf4d7df910395aad0b4 (patch)
treee8e77a4b6eda14218dc2789a85942ac6680779ff /clang/lib/Sema/SemaLookup.cpp
parentba7cc706d993b0b869559754fa529c6454ec52f7 (diff)
downloadbcm5719-llvm-21a6617c34c4c15183b5edf4d7df910395aad0b4.tar.gz
bcm5719-llvm-21a6617c34c4c15183b5edf4d7df910395aad0b4.zip
Don't consider records with a NULL identifier as a name for typo correction.
Because in C++, "anonymous" doesn't mean "nameless" for records. In other words, RecordDecl::isAnonymousStructOrUnion only returns true if the record lacks a name *and* is not used as the type in an object's declaration. llvm-svn: 200868
Diffstat (limited to 'clang/lib/Sema/SemaLookup.cpp')
-rw-r--r--clang/lib/Sema/SemaLookup.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaLookup.cpp b/clang/lib/Sema/SemaLookup.cpp
index 39dd555aeae..8a5c0a5ba7e 100644
--- a/clang/lib/Sema/SemaLookup.cpp
+++ b/clang/lib/Sema/SemaLookup.cpp
@@ -4216,7 +4216,7 @@ TypoCorrection Sema::CorrectTypo(const DeclarationNameInfo &TypoName,
if (CXXRecordDecl *CD = (*TI)->getAsCXXRecordDecl()) {
CD = CD->getCanonicalDecl();
if (!CD->isDependentType() && !CD->isAnonymousStructOrUnion() &&
- !CD->isUnion() &&
+ !CD->isUnion() && CD->getIdentifier() &&
(CD->isBeingDefined() || CD->isCompleteDefinition()))
Namespaces.AddNameSpecifier(CD);
}
OpenPOWER on IntegriCloud