summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp
diff options
context:
space:
mode:
authorChih-Hung Hsieh <chh@google.com>2017-05-23 16:19:04 +0000
committerChih-Hung Hsieh <chh@google.com>2017-05-23 16:19:04 +0000
commit2857b1245b7bab722e3a678fd4e7d65143bc0f55 (patch)
treeece6396e8884e1183074d0bafc569509d16f6dc0 /clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp
parentaf3d4db64bd2106383be848c46635059d20077fe (diff)
downloadbcm5719-llvm-2857b1245b7bab722e3a678fd4e7d65143bc0f55.tar.gz
bcm5719-llvm-2857b1245b7bab722e3a678fd4e7d65143bc0f55.zip
[clang-tidy] Do not dereference a null BaseType
Check BaseType before dereference. Simplified test case is derived from Android Open Source code. Differential Revision: https://reviews.llvm.org/D33430 llvm-svn: 303645
Diffstat (limited to 'clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp')
-rw-r--r--clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp b/clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp
index 2efa53597b5..3da5a0998da 100644
--- a/clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp
+++ b/clang-tools-extra/clang-tidy/misc/ForwardingReferenceOverloadCheck.cpp
@@ -40,6 +40,8 @@ AST_MATCHER(QualType, isEnableIf) {
if (const auto *Dependent = BaseType->getAs<DependentNameType>()) {
BaseType = Dependent->getQualifier()->getAsType();
}
+ if (!BaseType)
+ return false;
if (CheckTemplate(BaseType->getAs<TemplateSpecializationType>())) {
return true; // Case: enable_if_t< >.
} else if (const auto *Elaborated = BaseType->getAs<ElaboratedType>()) {
OpenPOWER on IntegriCloud