summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDeclCXX.cpp
diff options
context:
space:
mode:
authorKaelyn Takata <rikka@google.com>2015-09-30 18:23:35 +0000
committerKaelyn Takata <rikka@google.com>2015-09-30 18:23:35 +0000
commitd14c06169cce96fae3cf9565b216286ef52765b6 (patch)
treec3a6dbe3602e3cb9e9bbf25fe10b667d4d5d5b4d /clang/lib/Sema/SemaDeclCXX.cpp
parentb0c6d9174ef6d1ce4eac5951dd42107b1a49ecfc (diff)
downloadbcm5719-llvm-d14c06169cce96fae3cf9565b216286ef52765b6.tar.gz
bcm5719-llvm-d14c06169cce96fae3cf9565b216286ef52765b6.zip
Don't correct non-class using declarations to class members.
Such declarations would be invalid anyway, and trying to make the correction will lead to a crash. Fixes PR 24781. llvm-svn: 248928
Diffstat (limited to 'clang/lib/Sema/SemaDeclCXX.cpp')
-rw-r--r--clang/lib/Sema/SemaDeclCXX.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
index ff9c93d2f69..07bf8567194 100644
--- a/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/clang/lib/Sema/SemaDeclCXX.cpp
@@ -8031,6 +8031,10 @@ public:
// FIXME: Check that the base class member is accessible?
}
+ } else {
+ auto *FoundRecord = dyn_cast<CXXRecordDecl>(ND);
+ if (FoundRecord && FoundRecord->isInjectedClassName())
+ return false;
}
if (isa<TypeDecl>(ND))
OpenPOWER on IntegriCloud