[clang] [Clang] Fix handling of brace ellison when building deduction guides (PR #94889)

Younan Zhang via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 11 08:40:17 PDT 2024


================
@@ -335,3 +335,73 @@ namespace TTP {
 // CHECK-NEXT:      `-TemplateArgument type 'T':'type-parameter-0-0'{{$}}
 // CHECK-NEXT:        `-TemplateTypeParmType {{.+}} 'T' dependent depth 0 index 0{{$}}
 // CHECK-NEXT:          `-TemplateTypeParm {{.+}} 'T'{{$}}
+
+namespace GH64625 {
+
+template <class T> struct X {
----------------
zyn0217 wrote:

So, I realized the problem: we added the first parameter of the type `T (&&)[2]` but the following logic consumed all the remaining initializers by altering the `Index` - it's then hard and involved to retain the 'no-elision' version of parameters in one go of an `InitListChecker`. I decided to decouple it into two separate calls now.

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


More information about the cfe-commits mailing list