[ASTMatchers] isSignedInteger() and isUnsignedInteger()
Complementary to isInteger(), these match signed and unsigned integers
respectively.
Review: http://reviews.llvm.org/D21989
llvm-svn: 275157
diff --git a/clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp b/clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
index 28b462e..82c5139 100644
--- a/clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
+++ b/clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
@@ -723,6 +723,18 @@
to(varDecl(hasType(isInteger()))))))));
}
+TEST(IsSignedInteger, MatchesSignedIntegers) {
+ EXPECT_TRUE(matches("int i = 0;", varDecl(hasType(isSignedInteger()))));
+ EXPECT_TRUE(notMatches("unsigned i = 0;",
+ varDecl(hasType(isSignedInteger()))));
+}
+
+TEST(IsUnsignedInteger, MatchesUnsignedIntegers) {
+ EXPECT_TRUE(notMatches("int i = 0;", varDecl(hasType(isUnsignedInteger()))));
+ EXPECT_TRUE(matches("unsigned i = 0;",
+ varDecl(hasType(isUnsignedInteger()))));
+}
+
TEST(IsAnyPointer, MatchesPointers) {
EXPECT_TRUE(matches("int* i = nullptr;", varDecl(hasType(isAnyPointer()))));
}