@@ -154,15 +154,6 @@ class SILWitnessTable : public llvm::ilist_node<SILWitnessTable>,
154
154
const PrintOptions &options) const ;
155
155
};
156
156
157
- // / An entry for a conformance requirement that makes the requirement
158
- // / conditional. These aren't public, but any witness thunks need to feed them
159
- // / into the true witness functions.
160
- struct ConditionalConformance {
161
- // / FIXME: Temporary.
162
- CanType Requirement;
163
- ProtocolConformanceRef Conformance;
164
- };
165
-
166
157
private:
167
158
// / The module which contains the SILWitnessTable.
168
159
SILModule &Mod;
@@ -186,7 +177,7 @@ class SILWitnessTable : public llvm::ilist_node<SILWitnessTable>,
186
177
// /
187
178
// / (If other private entities are introduced this could/should be switched
188
179
// / into a private version of Entries.)
189
- MutableArrayRef<ConditionalConformance > ConditionalConformances;
180
+ MutableArrayRef<ProtocolConformanceRef > ConditionalConformances;
190
181
191
182
// / Whether or not this witness table is a declaration. This is separate from
192
183
// / whether or not entries is empty since you can have an empty witness table
@@ -201,7 +192,7 @@ class SILWitnessTable : public llvm::ilist_node<SILWitnessTable>,
201
192
SILWitnessTable (SILModule &M, SILLinkage Linkage, SerializedKind_t Serialized,
202
193
StringRef name, ProtocolConformance *conformance,
203
194
ArrayRef<Entry> entries,
204
- ArrayRef<ConditionalConformance > conditionalConformances);
195
+ ArrayRef<ProtocolConformanceRef > conditionalConformances);
205
196
206
197
// / Private constructor for making SILWitnessTable declarations.
207
198
SILWitnessTable (SILModule &M, SILLinkage Linkage, StringRef Name,
@@ -214,7 +205,7 @@ class SILWitnessTable : public llvm::ilist_node<SILWitnessTable>,
214
205
static SILWitnessTable *
215
206
create (SILModule &M, SILLinkage Linkage, SerializedKind_t SerializedKind,
216
207
ProtocolConformance *conformance, ArrayRef<Entry> entries,
217
- ArrayRef<ConditionalConformance > conditionalConformances);
208
+ ArrayRef<ProtocolConformanceRef > conditionalConformances);
218
209
219
210
// / Create a new SILWitnessTable declaration.
220
211
static SILWitnessTable *create (SILModule &M, SILLinkage Linkage,
@@ -271,7 +262,7 @@ class SILWitnessTable : public llvm::ilist_node<SILWitnessTable>,
271
262
ArrayRef<Entry> getEntries () const { return Entries; }
272
263
273
264
// / Return all of the conditional conformances.
274
- ArrayRef<ConditionalConformance > getConditionalConformances () const {
265
+ ArrayRef<ProtocolConformanceRef > getConditionalConformances () const {
275
266
return ConditionalConformances;
276
267
}
277
268
@@ -300,7 +291,7 @@ class SILWitnessTable : public llvm::ilist_node<SILWitnessTable>,
300
291
// / Change a SILWitnessTable declaration into a SILWitnessTable definition.
301
292
void
302
293
convertToDefinition (ArrayRef<Entry> newEntries,
303
- ArrayRef<ConditionalConformance > conditionalConformances,
294
+ ArrayRef<ProtocolConformanceRef > conditionalConformances,
304
295
SerializedKind_t serializedKind);
305
296
306
297
// Gets conformance serialized kind.
0 commit comments