@@ -33,7 +33,7 @@ protocol P3 {
33
33
34
34
// CHECK-LABEL: StructDecl name=Basic
35
35
// CHECK: (normal_conformance type=Basic protocol=P1
36
- // CHECK-NEXT: (assoc_type req=A type=Basic.A )
36
+ // CHECK-NEXT: (assoc_type req=A type=Int )
37
37
// CHECK-NEXT: (value req=f() witness=main.(file).Basic.f()@{{.*}}))
38
38
struct Basic : P1 {
39
39
typealias A = Int
@@ -44,8 +44,8 @@ struct Basic: P1 {
44
44
45
45
// CHECK-LABEL: StructDecl name=Recur
46
46
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2
47
- // CHECK-NEXT: (assoc_type req=A type=Recur.A )
48
- // CHECK-NEXT: (assoc_type req=B type=Recur.B )
47
+ // CHECK-NEXT: (assoc_type req=A type=Recur)
48
+ // CHECK-NEXT: (assoc_type req=B type=Recur)
49
49
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above))
50
50
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above)))
51
51
struct Recur : P2 {
@@ -57,11 +57,11 @@ struct Recur: P2 {
57
57
58
58
// CHECK-LABEL: StructDecl name=NonRecur
59
59
// CHECK-NEXT: (normal_conformance type=NonRecur protocol=P2
60
- // CHECK-NEXT: (assoc_type req=A type=NonRecur.A )
61
- // CHECK-NEXT: (assoc_type req=B type=NonRecur.B )
60
+ // CHECK-NEXT: (assoc_type req=A type=Recur )
61
+ // CHECK-NEXT: (assoc_type req=B type=Recur )
62
62
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2
63
- // CHECK-NEXT: (assoc_type req=A type=Recur.A )
64
- // CHECK-NEXT: (assoc_type req=B type=Recur.B )
63
+ // CHECK-NEXT: (assoc_type req=A type=Recur)
64
+ // CHECK-NEXT: (assoc_type req=B type=Recur)
65
65
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above))
66
66
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above)))
67
67
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above)))
@@ -75,7 +75,7 @@ struct NonRecur: P2 {
75
75
struct Generic < T> { }
76
76
// CHECK-LABEL: ExtensionDecl line={{.*}} base=Generic<T>
77
77
// CHECK-NEXT: (normal_conformance type=Generic<T> protocol=P1
78
- // CHECK-NEXT: (assoc_type req=A type=Generic<T>.A )
78
+ // CHECK-NEXT: (assoc_type req=A type=T )
79
79
// CHECK-NEXT: (value req=f() witness=main.(file).Generic.f()@{{.*}})
80
80
// CHECK-NEXT: conforms_to: T P1)
81
81
extension Generic : P1 where T: P1 {
@@ -88,8 +88,8 @@ extension Generic: P1 where T: P1 {
88
88
class Super < T, U> { }
89
89
// CHECK-LABEL: ExtensionDecl line={{.*}} base=Super<T, U>
90
90
// CHECK-NEXT: (normal_conformance type=Super<T, U> protocol=P2
91
- // CHECK-NEXT: (assoc_type req=A type=Super<T, U>.A )
92
- // CHECK-NEXT: (assoc_type req=B type=Super<T, U>.B )
91
+ // CHECK-NEXT: (assoc_type req=A type=T )
92
+ // CHECK-NEXT: (assoc_type req=B type=T )
93
93
// CHECK-NEXT: (abstract_conformance protocol=P2)
94
94
// CHECK-NEXT: (abstract_conformance protocol=P2)
95
95
// CHECK-NEXT: conforms_to: T P2
@@ -108,11 +108,11 @@ extension Super: P2 where T: P2, U: P2 {
108
108
// CHECK-NEXT: (substitution U -> Recur)
109
109
// CHECK-NEXT: (conformance type=T
110
110
// CHECK-NEXT: (normal_conformance type=NonRecur protocol=P2
111
- // CHECK-NEXT: (assoc_type req=A type=NonRecur.A )
112
- // CHECK-NEXT: (assoc_type req=B type=NonRecur.B )
111
+ // CHECK-NEXT: (assoc_type req=A type=Recur )
112
+ // CHECK-NEXT: (assoc_type req=B type=Recur )
113
113
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2
114
- // CHECK-NEXT: (assoc_type req=A type=Recur.A )
115
- // CHECK-NEXT: (assoc_type req=B type=Recur.B )
114
+ // CHECK-NEXT: (assoc_type req=A type=Recur)
115
+ // CHECK-NEXT: (assoc_type req=B type=Recur)
116
116
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above))
117
117
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above)))
118
118
// CHECK-NEXT: (normal_conformance type=Recur protocol=P2 (details printed above))))
@@ -121,8 +121,8 @@ extension Super: P2 where T: P2, U: P2 {
121
121
// CHECK-NEXT: conforms_to: NonRecur P2
122
122
// CHECK-NEXT: conforms_to: Recur P2
123
123
// CHECK-NEXT: (normal_conformance type=Super<T, U> protocol=P2
124
- // CHECK-NEXT: (assoc_type req=A type=Super<T, U>.A )
125
- // CHECK-NEXT: (assoc_type req=B type=Super<T, U>.B )
124
+ // CHECK-NEXT: (assoc_type req=A type=T )
125
+ // CHECK-NEXT: (assoc_type req=B type=T )
126
126
// CHECK-NEXT: (abstract_conformance protocol=P2)
127
127
// CHECK-NEXT: (abstract_conformance protocol=P2)
128
128
// CHECK-NEXT: conforms_to: T P2
@@ -134,22 +134,22 @@ class Sub: Super<NonRecur, Recur> {}
134
134
135
135
// CHECK-LABEL: StructDecl name=RecurGeneric
136
136
// CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3
137
- // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<T>.A )
137
+ // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<T>)
138
138
// CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3 (details printed above)))
139
139
struct RecurGeneric < T: P3 > : P3 {
140
140
typealias A = RecurGeneric < T >
141
141
}
142
142
143
143
// CHECK-LABEL: StructDecl name=Specialize
144
144
// CHECK-NEXT: (normal_conformance type=Specialize protocol=P3
145
- // CHECK-NEXT: (assoc_type req=A type=Specialize.A )
145
+ // CHECK-NEXT: (assoc_type req=A type=RecurGeneric< Specialize> )
146
146
// CHECK-NEXT: (specialized_conformance type=Specialize.A protocol=P3
147
147
// CHECK-NEXT: (substitution_map generic_signature=<T where T : P3>
148
148
// CHECK-NEXT: (substitution T -> Specialize)
149
149
// CHECK-NEXT: (conformance type=T
150
150
// CHECK-NEXT: (normal_conformance type=Specialize protocol=P3 (details printed above))))
151
151
// CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3
152
- // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<T>.A )
152
+ // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<T>)
153
153
// CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3 (details printed above)))))
154
154
struct Specialize : P3 {
155
155
typealias A = RecurGeneric < Specialize >
0 commit comments