summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorRichard Smith <richard@metafoo.co.uk>2020-03-13 18:53:08 -0700
committerHaojian Wu <hokein.wu@gmail.com>2020-06-10 11:46:25 +0200
commitd942a81c71a3f970857e92e98cc6503b61b589b0 (patch)
tree06cd071274fad3b0fbe91e862328d4f89b60d4b5 /clang/lib
parentcbc9b92df4582617314b08d1ecef41d355733874 (diff)
downloadbcm5719-llvm-d942a81c71a3f970857e92e98cc6503b61b589b0.tar.gz
bcm5719-llvm-d942a81c71a3f970857e92e98cc6503b61b589b0.zip
PR45063: Fix crash on invalid processing an elaborated class template-id
with an invalid scope specifier. (cherry picked from commit 44c3a63c74dddeef17e424ec76bd90c8582d8a3c)
Diffstat (limited to 'clang/lib')
-rwxr-xr-xclang/lib/Sema/SemaTemplate.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
index c38c724ed9b..943e8f422a7 100755
--- a/clang/lib/Sema/SemaTemplate.cpp
+++ b/clang/lib/Sema/SemaTemplate.cpp
@@ -3817,6 +3817,9 @@ TypeResult Sema::ActOnTagTemplateIdType(TagUseKind TUK,
SourceLocation LAngleLoc,
ASTTemplateArgsPtr TemplateArgsIn,
SourceLocation RAngleLoc) {
+ if (SS.isInvalid())
+ return TypeResult(true);
+
TemplateName Template = TemplateD.get();
// Translate the parser's template argument list in our AST format.
OpenPOWER on IntegriCloud