@@ -32,9 +32,9 @@ protocol P3 {
32
32
}
33
33
34
34
// CHECK-LABEL: StructDecl name=Basic
35
- // CHECK: (normal_conformance type=Basic protocol=P1
36
- // CHECK-NEXT: (assoc_type req=A type=Int)
37
- // CHECK-NEXT: (value req=f() witness=main.(file).Basic.f()@{{.*}}))
35
+ // CHECK: (normal_conformance type=" Basic" protocol="P1"
36
+ // CHECK-NEXT: (assoc_type req="A" type=" Int" )
37
+ // CHECK-NEXT: (value req=" f()" witness=" main.(file).Basic.f()@{{.*}}" ))
38
38
struct Basic : P1 {
39
39
typealias A = Int
40
40
func f( ) -> Int { fatalError ( ) }
@@ -43,11 +43,11 @@ struct Basic: P1 {
43
43
// Recursive conformances should have finite output.
44
44
45
45
// CHECK-LABEL: StructDecl name=Recur
46
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2
47
- // CHECK-NEXT: (assoc_type req=A type=Recur)
48
- // CHECK-NEXT: (assoc_type req=B type=Recur)
49
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) )
50
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) ))
46
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2"
47
+ // CHECK-NEXT: (assoc_type req="A" type=" Recur" )
48
+ // CHECK-NEXT: (assoc_type req="B" type=" Recur" )
49
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> )
50
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> ))
51
51
struct Recur : P2 {
52
52
typealias A = Recur
53
53
typealias B = Recur
@@ -56,15 +56,15 @@ struct Recur: P2 {
56
56
// The full information about a conformance doesn't need to be printed twice.
57
57
58
58
// CHECK-LABEL: StructDecl name=NonRecur
59
- // CHECK-NEXT: (normal_conformance type=NonRecur protocol=P2
60
- // CHECK-NEXT: (assoc_type req=A type=Recur)
61
- // CHECK-NEXT: (assoc_type req=B type=Recur)
62
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2
63
- // CHECK-NEXT: (assoc_type req=A type=Recur)
64
- // CHECK-NEXT: (assoc_type req=B type=Recur)
65
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) )
66
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) ))
67
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) ))
59
+ // CHECK-NEXT: (normal_conformance type=" NonRecur" protocol="P2"
60
+ // CHECK-NEXT: (assoc_type req="A" type=" Recur" )
61
+ // CHECK-NEXT: (assoc_type req="B" type=" Recur" )
62
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2"
63
+ // CHECK-NEXT: (assoc_type req="A" type=" Recur" )
64
+ // CHECK-NEXT: (assoc_type req="B" type=" Recur" )
65
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> )
66
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> ))
67
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> ))
68
68
struct NonRecur : P2 {
69
69
typealias A = Recur
70
70
typealias B = Recur
@@ -77,9 +77,9 @@ struct NonRecur: P2 {
77
77
// CHECK-LABEL: ExtensionDecl line={{.*}} base=Generic
78
78
struct Generic < T> { }
79
79
// CHECK-LABEL: ExtensionDecl line={{.*}} base=Generic
80
- // CHECK-NEXT: (normal_conformance type=Generic<T> protocol=P1
81
- // CHECK-NEXT: (assoc_type req=A type=T )
82
- // CHECK-NEXT: (value req=f() witness=main.(file).Generic extension.f()@{{.*}})
80
+ // CHECK-NEXT: (normal_conformance type=" Generic<T>" protocol="P1"
81
+ // CHECK-NEXT: (assoc_type req="A" type="T" )
82
+ // CHECK-NEXT: (value req=" f()" witness=" main.(file).Generic extension.f()@{{.*}}" )
83
83
// CHECK-NEXT: conforms_to: T P1)
84
84
extension Generic : P1 where T: P1 {
85
85
typealias A = T
@@ -94,11 +94,11 @@ extension Generic: P1 where T: P1 {
94
94
// CHECK-LABEL: ExtensionDecl line={{.*}} base=Super
95
95
class Super < T, U> { }
96
96
// CHECK-LABEL: ExtensionDecl line={{.*}} base=Super
97
- // CHECK-NEXT: (normal_conformance type=Super<T, U> protocol=P2
98
- // CHECK-NEXT: (assoc_type req=A type=T )
99
- // CHECK-NEXT: (assoc_type req=B type=T )
100
- // CHECK-NEXT: (abstract_conformance protocol=P2 )
101
- // CHECK-NEXT: (abstract_conformance protocol=P2 )
97
+ // CHECK-NEXT: (normal_conformance type=" Super<T, U>" protocol="P2"
98
+ // CHECK-NEXT: (assoc_type req="A" type="T" )
99
+ // CHECK-NEXT: (assoc_type req="B" type="T" )
100
+ // CHECK-NEXT: (abstract_conformance protocol="P2" )
101
+ // CHECK-NEXT: (abstract_conformance protocol="P2" )
102
102
// CHECK-NEXT: conforms_to: T P2
103
103
// CHECK-NEXT: conforms_to: U P2)
104
104
extension Super : P2 where T: P2 , U: P2 {
@@ -108,29 +108,29 @@ extension Super: P2 where T: P2, U: P2 {
108
108
109
109
// Inherited/specialized conformances.
110
110
// CHECK-LABEL: ClassDecl name=Sub
111
- // CHECK-NEXT: (inherited_conformance type=Sub protocol=P2
112
- // CHECK-NEXT: (specialized_conformance type=Super<NonRecur, Recur> protocol=P2
113
- // CHECK-NEXT: (substitution_map generic_signature=<T, U where T : P2, U : P2>
114
- // CHECK-NEXT: (substitution T -> NonRecur)
115
- // CHECK-NEXT: (substitution U -> Recur)
116
- // CHECK-NEXT: (conformance type=T
117
- // CHECK-NEXT: (normal_conformance type=NonRecur protocol=P2
118
- // CHECK-NEXT: (assoc_type req=A type=Recur)
119
- // CHECK-NEXT: (assoc_type req=B type=Recur)
120
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2
121
- // CHECK-NEXT: (assoc_type req=A type=Recur)
122
- // CHECK-NEXT: (assoc_type req=B type=Recur)
123
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) )
124
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) ))
125
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) )))
126
- // CHECK-NEXT: (conformance type=U
127
- // CHECK-NEXT: (normal_conformance type=Recur protocol=P2 ( details printed above) )))
128
- // CHECK-NEXT: (conditional requirements unable to be computed)
129
- // CHECK-NEXT: (normal_conformance type=Super<T, U> protocol=P2
130
- // CHECK-NEXT: (assoc_type req=A type=T )
131
- // CHECK-NEXT: (assoc_type req=B type=T )
132
- // CHECK-NEXT: (abstract_conformance protocol=P2 )
133
- // CHECK-NEXT: (abstract_conformance protocol=P2 )
111
+ // CHECK-NEXT: (inherited_conformance type=" Sub" protocol="P2"
112
+ // CHECK-NEXT: (specialized_conformance type=" Super<NonRecur, Recur>" protocol="P2"
113
+ // CHECK-NEXT: (substitution_map generic_signature=" <T, U where T : P2, U : P2>"
114
+ // CHECK-NEXT: (substitution " T -> NonRecur" )
115
+ // CHECK-NEXT: (substitution " U -> Recur" )
116
+ // CHECK-NEXT: (conformance type="T"
117
+ // CHECK-NEXT: (normal_conformance type=" NonRecur" protocol="P2"
118
+ // CHECK-NEXT: (assoc_type req="A" type=" Recur" )
119
+ // CHECK-NEXT: (assoc_type req="B" type=" Recur" )
120
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2"
121
+ // CHECK-NEXT: (assoc_type req="A" type=" Recur" )
122
+ // CHECK-NEXT: (assoc_type req="B" type=" Recur" )
123
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> )
124
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> ))
125
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> )))
126
+ // CHECK-NEXT: (conformance type="U"
127
+ // CHECK-NEXT: (normal_conformance type=" Recur" protocol="P2" < details printed above> )))
128
+ // CHECK-NEXT: (< conditional requirements unable to be computed> )
129
+ // CHECK-NEXT: (normal_conformance type=" Super<T, U>" protocol="P2"
130
+ // CHECK-NEXT: (assoc_type req="A" type="T" )
131
+ // CHECK-NEXT: (assoc_type req="B" type="T" )
132
+ // CHECK-NEXT: (abstract_conformance protocol="P2" )
133
+ // CHECK-NEXT: (abstract_conformance protocol="P2" )
134
134
// CHECK-NEXT: conforms_to: T P2
135
135
// CHECK-NEXT: conforms_to: U P2)))
136
136
class Sub : Super < NonRecur , Recur > { }
@@ -139,24 +139,24 @@ class Sub: Super<NonRecur, Recur> {}
139
139
// should work through SubstitutionMaps.
140
140
141
141
// CHECK-LABEL: StructDecl name=RecurGeneric
142
- // CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3
143
- // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<T>)
144
- // CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3 ( details printed above) ))
142
+ // CHECK-NEXT: (normal_conformance type=" RecurGeneric<T>" protocol="P3"
143
+ // CHECK-NEXT: (assoc_type req="A" type=" RecurGeneric<T>" )
144
+ // CHECK-NEXT: (normal_conformance type=" RecurGeneric<T>" protocol="P3" < details printed above> ))
145
145
struct RecurGeneric < T: P3 > : P3 {
146
146
typealias A = RecurGeneric < T >
147
147
}
148
148
149
149
// CHECK-LABEL: StructDecl name=Specialize
150
- // CHECK-NEXT: (normal_conformance type=Specialize protocol=P3
151
- // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<Specialize>)
152
- // CHECK-NEXT: (specialized_conformance type=Specialize.A protocol=P3
153
- // CHECK-NEXT: (substitution_map generic_signature=<T where T : P3>
154
- // CHECK-NEXT: (substitution T -> Specialize)
155
- // CHECK-NEXT: (conformance type=T
156
- // CHECK-NEXT: (normal_conformance type=Specialize protocol=P3 ( details printed above) )))
157
- // CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3
158
- // CHECK-NEXT: (assoc_type req=A type=RecurGeneric<T>)
159
- // CHECK-NEXT: (normal_conformance type=RecurGeneric<T> protocol=P3 ( details printed above) ))))
150
+ // CHECK-NEXT: (normal_conformance type=" Specialize" protocol="P3"
151
+ // CHECK-NEXT: (assoc_type req="A" type=" RecurGeneric<Specialize>" )
152
+ // CHECK-NEXT: (specialized_conformance type=" Specialize.A" protocol="P3"
153
+ // CHECK-NEXT: (substitution_map generic_signature=" <T where T : P3>"
154
+ // CHECK-NEXT: (substitution " T -> Specialize" )
155
+ // CHECK-NEXT: (conformance type="T"
156
+ // CHECK-NEXT: (normal_conformance type=" Specialize" protocol="P3" < details printed above> )))
157
+ // CHECK-NEXT: (normal_conformance type=" RecurGeneric<T>" protocol="P3"
158
+ // CHECK-NEXT: (assoc_type req="A" type=" RecurGeneric<T>" )
159
+ // CHECK-NEXT: (normal_conformance type=" RecurGeneric<T>" protocol="P3" < details printed above> ))))
160
160
struct Specialize : P3 {
161
161
typealias A = RecurGeneric < Specialize >
162
162
}
0 commit comments