@@ -85,6 +85,23 @@ private class PrivateClass {
85
85
}
86
86
87
87
public class PublicClass {
88
+ // CHECK-NO-SKIP: sil [transparent]{{.*}} @$s4Test11PublicClassC11internalVarSivpfi : $@convention(thin) () -> Int {
89
+ // CHECK-SKIP-NOT: s4Test11PublicClassC11internalVarSivpfi
90
+ // CHECK-NO-SKIP: sil hidden [transparent]{{.*}} @$s4Test11PublicClassC11internalVarSivg : $@convention(method) (@guaranteed PublicClass) -> Int {
91
+ // CHECK-SKIP-NOT: s4Test11PublicClassC11internalVarSivg
92
+ // CHECK-NO-SKIP: sil hidden [transparent]{{.*}} @$s4Test11PublicClassC11internalVarSivs : $@convention(method) (Int, @guaranteed PublicClass) -> () {
93
+ // CHECK-SKIP-NOT: s4Test11PublicClassC11internalVarSivs
94
+ // CHECK-NO-SKIP: sil hidden [transparent]{{.*}} @$s4Test11PublicClassC11internalVarSivM : $@yield_once @convention(method) (@guaranteed PublicClass) -> @yields @inout Int {
95
+ // CHECK-SKIP-NOT: s4Test11PublicClassC11internalVarSivM
96
+ var internalVar = 1
97
+
98
+ // CHECK-NO-SKIP: sil [transparent]{{.*}} @$s4Test11PublicClassC9publicVarSivpfi : $@convention(thin) () -> Int {
99
+ // CHECK-SKIP-NOT: s4Test11PublicClassC9publicVarSivpfi
100
+ // CHECK: sil [transparent] [serialized]{{.*}} @$s4Test11PublicClassC9publicVarSivg : $@convention(method) (@guaranteed PublicClass) -> Int {
101
+ // CHECK: sil [transparent] [serialized]{{.*}} @$s4Test11PublicClassC9publicVarSivs : $@convention(method) (Int, @guaranteed PublicClass) -> () {
102
+ // CHECK: sil [transparent] [serialized]{{.*}} @$s4Test11PublicClassC9publicVarSivM : $@yield_once @convention(method) (@guaranteed PublicClass) -> @yields @inout Int {
103
+ public var publicVar = 1
104
+
88
105
// CHECK-NO-SKIP: sil hidden{{.*}} @$s4Test11PublicClassC14internalMethodyyF : $@convention(method) (@guaranteed PublicClass) -> () {
89
106
// CHECK-SKIP-NOT: s4Test11PublicClassC14internalMethodyyF
90
107
internal func internalMethod( ) { }
@@ -106,16 +123,32 @@ extension PublicClass {
106
123
internal func internalMethodInExtension( ) { }
107
124
}
108
125
126
+ @frozen public struct FrozenPublicStruct {
127
+ // CHECK: sil non_abi [transparent] [serialized]{{.*}} @$s4Test18FrozenPublicStructV11internalVarSivpfi : $@convention(thin) () -> Int {
128
+ var internalVar = 1
129
+ }
130
+
109
131
// CHECK-NO-SKIP-LABEL: sil_vtable PrivateClass {
110
132
// CHECK-NO-SKIP-NEXT: #PrivateClass.init!allocator
111
133
// CHECK-NO-SKIP-NEXT: #PrivateClass.deinit!deallocator
112
134
// CHECK-NO-SKIP-NEXT: }
113
135
// CHECK-SKIP-NOT: sil_vtable PrivateClass
114
136
115
137
// CHECK-LABEL: sil_vtable [serialized] PublicClass {
138
+ // CHECK-NO-SKIP-NEXT: #PublicClass.internalVar!getter
139
+ // CHECK-SKIP-NOT: #PublicClass.internalVar!getter
140
+ // CHECK-NO-SKIP-NEXT: #PublicClass.internalVar!setter
141
+ // CHECK-SKIP-NOT: #PublicClass.internalVar!setter
142
+ // CHECK-NO-SKIP-NEXT: #PublicClass.internalVar!modify
143
+ // CHECK-SKIP-NOT: #PublicClass.internalVar!modify
144
+ // CHECK-NEXT: #PublicClass.publicVar!getter
145
+ // CHECK-NEXT: #PublicClass.publicVar!setter
146
+ // CHECK-NEXT: #PublicClass.publicVar!modify
116
147
// CHECK-NO-SKIP-NEXT: #PublicClass.internalMethod
117
148
// CHECK-SKIP-NOT: #PublicClass.internalMethod
118
149
// CHECK-NO-SKIP-NEXT: #PublicClass.init!allocator
119
150
// CHECK-SKIP-NOT: #PublicClass.init!allocator
120
151
// CHECK-NEXT: #PublicClass.deinit!deallocator
121
152
// CHECK-NEXT: }
153
+
154
+ // CHECK: sil_property #PublicClass.publicVar ()
0 commit comments