forked from OSchip/llvm-project
Revert "Revert "Revert "Implement nullPointerConstant() using a better API."""
This reverts commit ba1d9546ee
.
This commit is contained in:
parent
ba1d9546ee
commit
3b148d6f99
|
@ -7384,9 +7384,10 @@ extern const internal::VariadicDynCastAllOfMatcher<Stmt, CUDAKernelCallExpr>
|
|||
/// expr(nullPointerConstant())
|
||||
/// matches the initializer for v1, v2, v3, cp, and ip. Does not match the
|
||||
/// initializer for i.
|
||||
AST_MATCHER(Expr, nullPointerConstant) {
|
||||
return Node.isNullPointerConstant(Finder->getASTContext(),
|
||||
Expr::NPC_ValueDependentIsNull);
|
||||
AST_MATCHER_FUNCTION(internal::Matcher<Expr>, nullPointerConstant) {
|
||||
return anyOf(
|
||||
gnuNullExpr(), cxxNullPtrLiteralExpr(),
|
||||
integerLiteral(equals(0), hasParent(expr(hasType(pointerType())))));
|
||||
}
|
||||
|
||||
/// Matches the DecompositionDecl the binding belongs to.
|
||||
|
|
|
@ -3663,7 +3663,7 @@ TEST_P(ASTMatchersTest, NullPointerConstant) {
|
|||
expr(nullPointerConstant())));
|
||||
EXPECT_TRUE(matches("char *cp = (char *)0;", expr(nullPointerConstant())));
|
||||
EXPECT_TRUE(matches("int *ip = 0;", expr(nullPointerConstant())));
|
||||
EXPECT_TRUE(matches("int i = 0;", expr(nullPointerConstant())));
|
||||
EXPECT_FALSE(matches("int i = 0;", expr(nullPointerConstant())));
|
||||
}
|
||||
|
||||
TEST_P(ASTMatchersTest, NullPointerConstant_GNUNull) {
|
||||
|
|
Loading…
Reference in New Issue