@@ -44,7 +44,7 @@ using AT = A<int[3], int, int, short>;
44
44
// CHECK: FunctionProtoType {{.*}} 'auto (X<Ps...>, Ts (*)[Ns]...) -> A<T, Ts...>' dependent trailing_return
45
45
// CHECK: |-InjectedClassNameType {{.*}} 'A<T, Ts...>' dependent
46
46
// CHECK: |-ElaboratedType {{.*}} 'X<Ps...>' sugar dependent
47
- // CHECK: | `-TemplateSpecializationType {{.*}} 'X<Ps...>' dependent X
47
+ // CHECK: | `-TemplateSpecializationType {{.*}} 'X<Ps...>' dependent
48
48
// CHECK: | `-TemplateArgument expr
49
49
// CHECK: | `-PackExpansionExpr {{.*}} 'T *'
50
50
// CHECK: | `-DeclRefExpr {{.*}} 'T *' NonTypeTemplateParm {{.*}} 'Ps' 'T *'
@@ -79,7 +79,7 @@ using BT = B<char, 'x'>;
79
79
// CHECK: `-ParmVarDecl {{.*}} 'X<nullptr, 'x'>'
80
80
// CHECK: FunctionProtoType {{.*}} 'auto (X<W, V>) -> B<T, V>' dependent trailing_return
81
81
// CHECK: |-InjectedClassNameType {{.*}} 'B<T, V>' dependent
82
- // CHECK: `-TemplateSpecializationType {{.*}} 'X<W, V>' dependent X
82
+ // CHECK: `-TemplateSpecializationType {{.*}} 'X<W, V>' dependent
83
83
// CHECK: |-TemplateArgument expr
84
84
// CHECK: | `-DeclRefExpr {{.*}} 'type-parameter-0-2' NonTypeTemplateParm {{.*}} 'W' 'type-parameter-0-2'
85
85
// CHECK: `-TemplateArgument expr
@@ -119,7 +119,7 @@ using CT = C<int>;
119
119
// CHECK: |-TemplateTypeParmType {{.*}} 'A' dependent depth 0 index 0
120
120
// CHECK: | `-TemplateTypeParm {{.*}} 'A'
121
121
// CHECK: |-ElaboratedType {{.*}} 'Y<template-parameter-0-1>' sugar dependent
122
- // CHECK: | `-TemplateSpecializationType {{.*}} 'Y<template-parameter-0-1>' dependent Y
122
+ // CHECK: | `-TemplateSpecializationType {{.*}} 'Y<template-parameter-0-1>' dependent
123
123
// CHECK: | `-TemplateArgument template
124
124
// CHECK: `-TemplateTypeParmType {{.*}} 'type-parameter-0-2' dependent depth 0 index 2
125
125
@@ -144,7 +144,7 @@ using DT = D<int, int>;
144
144
// CHECK: FunctionProtoType {{.*}} 'auto (B<type-parameter-0-1, type-parameter-0-2> *) -> D<T...>' dependent trailing_return
145
145
// CHECK: |-InjectedClassNameType {{.*}} 'D<T...>' dependent
146
146
// CHECK: `-PointerType {{.*}} 'B<type-parameter-0-1, type-parameter-0-2> *' dependent
147
- // CHECK: `-TemplateSpecializationType {{.*}} 'B<type-parameter-0-1, type-parameter-0-2>' sugar dependent alias B
147
+ // CHECK: `-TemplateSpecializationType {{.*}} 'B<type-parameter-0-1, type-parameter-0-2>' sugar dependent alias
148
148
// CHECK: |-TemplateArgument type 'type-parameter-0-1'
149
149
// CHECK: |-TemplateArgument type 'type-parameter-0-2'
150
150
// CHECK: `-FunctionProtoType {{.*}} 'int (int (*)(T, U)...)' dependent cdecl
@@ -185,15 +185,15 @@ using ET = E<1, 3>;
185
185
// CHECK: `-ParmVarDecl {{.*}} 'B<M1, M2>':'Z<X<N, M>...>'
186
186
// CHECK: FunctionProtoType {{.*}} 'auto (B<M1, M2>) -> E<N...>' dependent trailing_return
187
187
// CHECK: |-InjectedClassNameType {{.*}} 'E<N...>' dependent
188
- // CHECK: `-TemplateSpecializationType {{.*}} 'B<M1, M2>' sugar dependent alias B
188
+ // CHECK: `-TemplateSpecializationType {{.*}} 'B<M1, M2>' sugar dependent alias
189
189
// CHECK: |-TemplateArgument expr
190
190
// CHECK: | `-DeclRefExpr {{.*}} 'int' NonTypeTemplateParm {{.*}} 'M1' 'int'
191
191
// CHECK: |-TemplateArgument expr
192
192
// CHECK: | `-DeclRefExpr {{.*}} 'int' NonTypeTemplateParm {{.*}} 'M2' 'int'
193
- // CHECK: `-TemplateSpecializationType {{.*}} 'Z<X<N, M>...>' dependent Z
193
+ // CHECK: `-TemplateSpecializationType {{.*}} 'Z<X<N, M>...>' dependent
194
194
// CHECK: `-TemplateArgument type 'X<N, M>...'
195
195
// CHECK: `-PackExpansionType {{.*}} 'X<N, M>...' dependent expansions 2
196
- // CHECK: `-TemplateSpecializationType {{.*}} 'X<N, M>' dependent contains_unexpanded_pack X
196
+ // CHECK: `-TemplateSpecializationType {{.*}} 'X<N, M>' dependent contains_unexpanded_pack
197
197
// CHECK: |-TemplateArgument expr
198
198
// CHECK-NOT: Subst
199
199
// CHECK: | `-DeclRefExpr {{.*}} 'int' NonTypeTemplateParm [[N]] 'N' 'int'
@@ -290,7 +290,9 @@ using AFoo = Foo<G<U>>;
290
290
// CHECK-NEXT: | | `-IntegerLiteral {{.*}}
291
291
// CHECK-NEXT: | `-TypeTraitExpr {{.*}} 'bool' __is_deducible
292
292
// CHECK-NEXT: | |-DeducedTemplateSpecializationType {{.*}} 'AFoo' dependent
293
- // CHECK-NEXT: | `-TemplateSpecializationType {{.*}} 'Foo<G<type-parameter-0-0>>' dependent Foo
293
+ // CHECK-NEXT: | | `-name: 'AFoo'
294
+ // CHECK-NEXT: | | `-TypeAliasTemplateDecl {{.+}} AFoo
295
+ // CHECK-NEXT: | `-TemplateSpecializationType {{.*}} 'Foo<G<type-parameter-0-0>>' dependent
294
296
// CHECK: |-CXXDeductionGuideDecl {{.*}} implicit <deduction guide for AFoo> 'auto (G<type-parameter-0-0>) -> Foo<G<type-parameter-0-0>>'
295
297
// CHECK-NEXT: | `-ParmVarDecl {{.*}} 'G<type-parameter-0-0>'
296
298
// CHECK-NEXT: `-CXXDeductionGuideDecl {{.*}} implicit used <deduction guide for AFoo> 'auto (G<int>) -> Foo<G<int>>' implicit_instantiation
@@ -327,7 +329,9 @@ namespace TTP {
327
329
// CHECK-NEXT: |-InjectedClassNameType {{.+}} 'B<T>' dependent{{$}}
328
330
// CHECK-NEXT: | `-CXXRecord {{.+}} 'B'{{$}}
329
331
// CHECK-NEXT: `-ElaboratedType {{.+}} 'template-parameter-0-1<T>' sugar dependent{{$}}
330
- // CHECK-NEXT: `-TemplateSpecializationType {{.+}} 'template-parameter-0-1<T>' dependent template-parameter-0-1{{$}}
332
+ // CHECK-NEXT: `-TemplateSpecializationType {{.+}} 'template-parameter-0-1<T>' dependent{{$}}
333
+ // CHECK-NEXT: |-name: 'template-parameter-0-1' qualified
334
+ // CHECK-NEXT: | `-TemplateTemplateParmDecl {{.+}} depth 0 index 1
331
335
// CHECK-NEXT: `-TemplateArgument type 'T':'type-parameter-0-0'{{$}}
332
336
// CHECK-NEXT: `-TemplateTypeParmType {{.+}} 'T' dependent depth 0 index 0{{$}}
333
337
// CHECK-NEXT: `-TemplateTypeParm {{.+}} 'T'{{$}}
0 commit comments