[clang] [Sema] Fix computations of "unexpanded packs" in substituted lambdas (PR #99882)

via cfe-commits cfe-commits at lists.llvm.org
Mon Jul 22 08:57:14 PDT 2024


https://github.com/cor3ntin commented:

I think I prefer the approach chosen by @zyn0217.

The changes are more targeted, and using a visitor for the call operator avoid a lot of code duplication. In particular, if we want to properly handle attributes, we might need code in `CollectUnexpandedParameterPacksVisitor.` Or maybe we just need a generic solution to store a flag on attributes.

I'd also would like us to avoid going over the lambda multiple times if we don't need to.

I would suggest:
 - Make a separate PR for template default arguments
 - Make an NFC commit for the fold expression assert
 - Help @zyn0217 ensure his PR covers all the failing tests
 - Find a good solution for attributes. If you tell me that there is a business reason to get `diagnose_if` working in 19, i think an ad-hoc solution is fine, as long as we replace it soon.
 
Does that seem reasonable?

https://github.com/llvm/llvm-project/pull/99882


More information about the cfe-commits mailing list