diff options
| author | Haojian Wu <hokein@google.com> | 2016-07-29 13:57:27 +0000 |
|---|---|---|
| committer | Haojian Wu <hokein@google.com> | 2016-07-29 13:57:27 +0000 |
| commit | d898b0982ad4cc80c3090896926fd8b93e82c748 (patch) | |
| tree | 37c1269335c28c720c084a9ad1af152b6be5bf2f /clang/unittests | |
| parent | fbbd9f96feda9c5f53bfa32d0c0f17c299dfa423 (diff) | |
| download | bcm5719-llvm-d898b0982ad4cc80c3090896926fd8b93e82c748.tar.gz bcm5719-llvm-d898b0982ad4cc80c3090896926fd8b93e82c748.zip | |
[ASTMatcher] Add hasTemplateArgument/hasAnyTemplateArgument support in functionDecl.
Reviewers: klimek
Subscribers: klimek, cfe-commits
Differential Revision: https://reviews.llvm.org/D22957
llvm-svn: 277142
Diffstat (limited to 'clang/unittests')
| -rw-r--r-- | clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp b/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp index 4149d4fd0b1..7c496647b4c 100644 --- a/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp +++ b/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp @@ -594,6 +594,14 @@ TEST(Matcher, MatchesSpecificArgument) { "A<int, bool> a;", templateSpecializationType(hasTemplateArgument( 1, refersToType(asString("int")))))); + + EXPECT_TRUE(matches( + "template<typename T> void f() {};" + "void func() { f<int>(); }", + functionDecl(hasTemplateArgument(0, refersToType(asString("int")))))); + EXPECT_TRUE(notMatches( + "template<typename T> void f() {};", + functionDecl(hasTemplateArgument(0, refersToType(asString("int")))))); } TEST(TemplateArgument, Matches) { @@ -603,6 +611,11 @@ TEST(TemplateArgument, Matches) { EXPECT_TRUE(matches( "template<typename T> struct C {}; C<int> c;", templateSpecializationType(hasAnyTemplateArgument(templateArgument())))); + + EXPECT_TRUE(matches( + "template<typename T> void f() {};" + "void func() { f<int>(); }", + functionDecl(hasAnyTemplateArgument(templateArgument())))); } TEST(RefersToIntegralType, Matches) { |

