LegalizeAdulthood marked an inline comment as done. LegalizeAdulthood added inline comments.
================ Comment at: clang/include/clang/ASTMatchers/ASTMatchers.h:5435-5442 +/// Matches two consecutive statements within a compound statement. +/// +/// Given +/// \code +/// { if (x > 0) return true; return false; } +/// \endcode +/// compoundStmt(hasSubstatementSequence(ifStmt(), returnStmt())) ---------------- aaron.ballman wrote: > LegalizeAdulthood wrote: > > aaron.ballman wrote: > > > How do we extend this to support testing arbitrary sequences of > > > statements? (If this supports two statements, someone will find a need > > > for three, etc). > > Yeah, I was wondering that too. I didn't see (but didn't look extensively) > > any support for variadic matchers taking a parameter pack. > > > > I stopped at 2 because this suits my immediate needs with > > `readability-simplify-boolean-expr` where I have to manually loop over > > `CompoundStmt` matches in order to verify that the `if (x) return true; > > return false;` constructs consist of two adjacent statements. > I don't think we have any variadic matchers yet to model on, but I think if > this is only needed for one check, we can add it in the current form as a > local matcher for that check. Whenever we figure out how to give the better > interface through the static and dynamic matchers, then we can figure out how > to lift this to the general matcher interface. > > WDYT? I don't think it is harmful to make it visible to all and I think it is helpful. Defining it in ASTMatchers, enables using it in `clang-query`, for instance. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D116518/new/ https://reviews.llvm.org/D116518 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits