Fix use of directly-nested traverse() matchers
This commit is contained in:
parent
121d51dc83
commit
23f17ab5ff
|
|
@ -1206,6 +1206,8 @@ public:
|
|||
}
|
||||
|
||||
llvm::Optional<clang::TraversalKind> TraversalKind() const override {
|
||||
if (auto NestedKind = this->InnerMatcher.getTraversalKind())
|
||||
return NestedKind;
|
||||
return Traversal;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -2372,6 +2372,11 @@ void foo()
|
|||
callExpr(has(callExpr(traverse(
|
||||
TK_AsIs, callExpr(has(implicitCastExpr(
|
||||
has(floatLiteral())))))))))));
|
||||
|
||||
EXPECT_TRUE(matches(
|
||||
Code,
|
||||
traverse(TK_IgnoreImplicitCastsAndParentheses,
|
||||
traverse(TK_AsIs, implicitCastExpr(has(floatLiteral()))))));
|
||||
}
|
||||
|
||||
TEST(Traversal, traverseMatcherThroughImplicit) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue