diff options
author | Edwin Vane <edwin.vane@intel.com> | 2013-04-01 18:33:34 +0000 |
---|---|---|
committer | Edwin Vane <edwin.vane@intel.com> | 2013-04-01 18:33:34 +0000 |
commit | 88be2fdec7a1375bc729a6499629532e7872f11a (patch) | |
tree | abd281b75830f86f07711e1bd135693b655b56fb /unittests/ASTMatchers | |
parent | e3faa6ec8005f34b705cef363b071b933e111e1c (diff) |
Adding parenType() and innerType() AST Matchers
Updated docs and tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178487 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/ASTMatchers')
-rw-r--r-- | unittests/ASTMatchers/ASTMatchersTest.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/unittests/ASTMatchers/ASTMatchersTest.cpp b/unittests/ASTMatchers/ASTMatchersTest.cpp index 2e2a824f8f..14824d018b 100644 --- a/unittests/ASTMatchers/ASTMatchersTest.cpp +++ b/unittests/ASTMatchers/ASTMatchersTest.cpp @@ -3387,6 +3387,19 @@ TEST(TypeMatching, MatchesFunctionTypes) { EXPECT_TRUE(matches("void f(int i) {}", functionType())); } +TEST(TypeMatching, MatchesParenType) { + EXPECT_TRUE( + matches("int (*array)[4];", varDecl(hasType(pointsTo(parenType()))))); + EXPECT_TRUE(notMatches("int *array[4];", varDecl(hasType(parenType())))); + + EXPECT_TRUE(matches( + "int (*ptr_to_func)(int);", + varDecl(hasType(pointsTo(parenType(innerType(functionType()))))))); + EXPECT_TRUE(notMatches( + "int (*ptr_to_array)[4];", + varDecl(hasType(pointsTo(parenType(innerType(functionType()))))))); +} + TEST(TypeMatching, PointerTypes) { // FIXME: Reactive when these tests can be more specific (not matching // implicit code on certain platforms), likely when we have hasDescendant for |