summaryrefslogtreecommitdiffstats
path: root/clang/lib/ASTMatchers
diff options
context:
space:
mode:
authorGabor Marton <martongabesz@gmail.com>2018-08-22 11:52:14 +0000
committerGabor Marton <martongabesz@gmail.com>2018-08-22 11:52:14 +0000
commit42e15deb6c7b4c4794f19fdf81a37338bfcd7cd9 (patch)
tree4e29abc8923bfe44064461bfb38865d55945ff47 /clang/lib/ASTMatchers
parentc5e44c1805716316e95eded8bf014649ac69d5bd (diff)
downloadbcm5719-llvm-42e15deb6c7b4c4794f19fdf81a37338bfcd7cd9.tar.gz
bcm5719-llvm-42e15deb6c7b4c4794f19fdf81a37338bfcd7cd9.zip
Fix import of class templates partial specialization
Summary: Currently there are several issues with the import of class template specializations. (1) Different TUs may have class template specializations with the same template arguments, but with different set of instantiated MethodDecls and FieldDecls. In this patch we provide a fix to merge these methods and fields. (2) Currently, we search the partial template specializations in the set of simple specializations and we add partial specializations as simple specializations. This is bad, this patch fixes it. Reviewers: a_sidorin, xazax.hun, r.stahl Subscribers: rnkovacs, dkrupp, cfe-commits Differential Revision: https://reviews.llvm.org/D50451 llvm-svn: 340402
Diffstat (limited to 'clang/lib/ASTMatchers')
-rw-r--r--clang/lib/ASTMatchers/ASTMatchersInternal.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/ASTMatchers/ASTMatchersInternal.cpp b/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
index 186289cd40a..7b551a4eee7 100644
--- a/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
+++ b/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
@@ -573,6 +573,9 @@ const internal::VariadicDynCastAllOfMatcher<Decl, ClassTemplateDecl>
const internal::VariadicDynCastAllOfMatcher<Decl,
ClassTemplateSpecializationDecl>
classTemplateSpecializationDecl;
+const internal::VariadicDynCastAllOfMatcher<
+ Decl, ClassTemplatePartialSpecializationDecl>
+ classTemplatePartialSpecializationDecl;
const internal::VariadicDynCastAllOfMatcher<Decl, DeclaratorDecl>
declaratorDecl;
const internal::VariadicDynCastAllOfMatcher<Decl, ParmVarDecl> parmVarDecl;
OpenPOWER on IntegriCloud