[PATCH] D94126: [ASTMatchers] Make it possible to use empty variadic matchers
Stephen Kelly via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jan 14 05:24:42 PST 2021
steveire added inline comments.
================
Comment at: clang/lib/ASTMatchers/ASTMatchersInternal.cpp:402
ArrayRef<DynTypedMatcher> InnerMatchers) {
+ if (InnerMatchers.empty())
+ return true;
----------------
aaron.ballman wrote:
> Does it make sense to return `true` when there are no inner matchers? I would have thought that that if there are no matchers, nothing would match (so we'd return `false`)?
When debugging a matcher like
```
callExpr(anyOf(
hasType(pointerType()),
callee(functionDecl(hasName("foo")))
))
```
and commenting out inner matchers to get
```
callExpr(anyOf(
# hasType(pointerType()),
# callee(functionDecl(hasName("foo")))
))
```
it would be very surprising for this to not match callExprs anymore.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D94126/new/
https://reviews.llvm.org/D94126
More information about the cfe-commits
mailing list