diff options
author | 2020-08-09 15:51:07 +0000 | |
---|---|---|
committer | 2020-08-09 15:51:07 +0000 | |
commit | 389bb291c0c8961ca40ac7a2636e1ca69ca7653c (patch) | |
tree | e027d0b3ed5ed27fe08d1bcaa20e3c191232a53b /gnu/llvm/clang/lib/Sema/SemaTemplate.cpp | |
parent | Import LLVM 10.0.1 including clang, lld and lldb. (diff) | |
download | wireguard-openbsd-389bb291c0c8961ca40ac7a2636e1ca69ca7653c.tar.xz wireguard-openbsd-389bb291c0c8961ca40ac7a2636e1ca69ca7653c.zip |
Import LLVM 10.0.1 including clang, lld and lldb.
Diffstat (limited to 'gnu/llvm/clang/lib/Sema/SemaTemplate.cpp')
-rwxr-xr-x | gnu/llvm/clang/lib/Sema/SemaTemplate.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gnu/llvm/clang/lib/Sema/SemaTemplate.cpp b/gnu/llvm/clang/lib/Sema/SemaTemplate.cpp index c38c724ed9b..264c903209a 100755 --- a/gnu/llvm/clang/lib/Sema/SemaTemplate.cpp +++ b/gnu/llvm/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. @@ -5925,7 +5928,9 @@ bool UnnamedLocalNoLinkageFinder::VisitDependentNameType( bool UnnamedLocalNoLinkageFinder::VisitDependentTemplateSpecializationType( const DependentTemplateSpecializationType* T) { - return VisitNestedNameSpecifier(T->getQualifier()); + if (auto *Q = T->getQualifier()) + return VisitNestedNameSpecifier(Q); + return false; } bool UnnamedLocalNoLinkageFinder::VisitPackExpansionType( @@ -5979,6 +5984,7 @@ bool UnnamedLocalNoLinkageFinder::VisitTagDecl(const TagDecl *Tag) { bool UnnamedLocalNoLinkageFinder::VisitNestedNameSpecifier( NestedNameSpecifier *NNS) { + assert(NNS); if (NNS->getPrefix() && VisitNestedNameSpecifier(NNS->getPrefix())) return true; |