summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaCXXScopeSpec.cpp
diff options
context:
space:
mode:
authorRichard Trieu <rtrieu@google.com>2018-07-07 00:17:25 +0000
committerRichard Trieu <rtrieu@google.com>2018-07-07 00:17:25 +0000
commit0282655f9d5fd5827f63e2f5d381cdb610521c2d (patch)
tree4a650ea3a25342f3b564114065f605faedb6960b /clang/lib/Sema/SemaCXXScopeSpec.cpp
parent9664ca9dce324b210d47b2f355e805ec35807dcd (diff)
downloadbcm5719-llvm-0282655f9d5fd5827f63e2f5d381cdb610521c2d.tar.gz
bcm5719-llvm-0282655f9d5fd5827f63e2f5d381cdb610521c2d.zip
Check returned type is valid before using it.
Add a .isNull() check to returned QualType. Fixes PR38077 llvm-svn: 336475
Diffstat (limited to 'clang/lib/Sema/SemaCXXScopeSpec.cpp')
-rw-r--r--clang/lib/Sema/SemaCXXScopeSpec.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaCXXScopeSpec.cpp b/clang/lib/Sema/SemaCXXScopeSpec.cpp
index 61a82aa721c..f2fad825c3e 100644
--- a/clang/lib/Sema/SemaCXXScopeSpec.cpp
+++ b/clang/lib/Sema/SemaCXXScopeSpec.cpp
@@ -846,6 +846,9 @@ bool Sema::ActOnCXXNestedNameSpecifierDecltype(CXXScopeSpec &SS,
assert(DS.getTypeSpecType() == DeclSpec::TST_decltype);
QualType T = BuildDecltypeType(DS.getRepAsExpr(), DS.getTypeSpecTypeLoc());
+ if (T.isNull())
+ return true;
+
if (!T->isDependentType() && !T->getAs<TagType>()) {
Diag(DS.getTypeSpecTypeLoc(), diag::err_expected_class_or_namespace)
<< T << getLangOpts().CPlusPlus;
OpenPOWER on IntegriCloud