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

Reply via email to