[clang] [clang] CTAD: fix the aggregate deduction guide for alias templates. (PR #90894)

Haojian Wu via cfe-commits cfe-commits at lists.llvm.org
Tue May 7 02:17:56 PDT 2024


================
@@ -261,6 +261,13 @@ AG ag = {1};
 // CHECK:   | `-BuiltinType {{.*}} 'int'
 // CHECK:   `-ParmVarDecl {{.*}} 'int'
 
+template <typename X = int>
+using BG = G<int>;
+BG bg(1.0);
+// CHECK-LABEL: Dumping <deduction guide for BG>
+// CHECK:      FunctionTemplateDecl {{.*}} implicit <deduction guide for BG>
+// CHECK: |-CXXDeductionGuideDecl {{.*}} 'auto (int) -> G<int>' aggregate
----------------
hokein wrote:

While the test is not matching the AST structure, I think it is better and clearer to keep it, as it explicitly demonstrates the child relationship with the above line (`FunctionTemplateDecl`).

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


More information about the cfe-commits mailing list