[PATCH] D21241: Add an ASTMatcher for ignoring ExprWithCleanups.
Etienne Bergeron via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 15 08:10:57 PDT 2016
etienneb added a subscriber: etienneb.
etienneb added a comment.
I was wondering why we didn't created that Matcher: IgnoreImplicit
I believe it's more commonly used than 'ignoringExprWithCleanups'.
It can be implemented by calling 'Stmt.IgnoreImplicit'.
/// Skip past any implicit AST nodes which might surround this
/// statement, such as ExprWithCleanups or ImplicitCastExpr nodes.
Stmt *IgnoreImplicit();
================
Comment at: unittests/ASTMatchers/ASTMatchersTraversalTest.cpp:2018
@@ +2017,3 @@
+ ignoringParenImpCasts(unless(anything())))))));
+ EXPECT_TRUE(notMatches("float y = (float(0));",
+ varDecl(hasInitializer(ignoringExprWithCleanups(
----------------
nit: you can lift that expression to a local variable:
varDecl(hasInitializer(ignoringExprWithCleanups(
ignoringParenImpCasts(integerLiteral()))))))
It's used 3 times.
http://reviews.llvm.org/D21241
More information about the cfe-commits
mailing list