@@ -145,6 +145,9 @@ id swift_dynamicCastMetatypeToObjectConditional(const Metadata *metatype);
145
145
146
146
// protocol _ObjectiveCBridgeable {
147
147
struct _ObjectiveCBridgeableWitnessTable : WitnessTable {
148
+ #define _protocolWitnessSignedPointer (n ) \
149
+ __ptrauth_swift_protocol_witness_function_pointer (SpecialPointerAuthDiscriminators::n##Discriminator) n
150
+
148
151
static_assert (WitnessTableFirstRequirementOffset == 1 ,
149
152
" Witness table layout changed" );
150
153
@@ -153,14 +156,14 @@ struct _ObjectiveCBridgeableWitnessTable : WitnessTable {
153
156
154
157
// func _bridgeToObjectiveC() -> _ObjectiveCType
155
158
SWIFT_CC (swift)
156
- HeapObject *(*bridgeToObjectiveC)(
159
+ HeapObject *(*_protocolWitnessSignedPointer ( bridgeToObjectiveC) )(
157
160
SWIFT_CONTEXT OpaqueValue *self, const Metadata *Self,
158
161
const _ObjectiveCBridgeableWitnessTable *witnessTable);
159
162
160
163
// class func _forceBridgeFromObjectiveC(x: _ObjectiveCType,
161
164
// inout result: Self?)
162
165
SWIFT_CC (swift)
163
- void (*forceBridgeFromObjectiveC)(
166
+ void (*_protocolWitnessSignedPointer ( forceBridgeFromObjectiveC) )(
164
167
HeapObject *sourceValue,
165
168
OpaqueValue *result,
166
169
SWIFT_CONTEXT const Metadata *self,
@@ -170,7 +173,7 @@ struct _ObjectiveCBridgeableWitnessTable : WitnessTable {
170
173
// class func _conditionallyBridgeFromObjectiveC(x: _ObjectiveCType,
171
174
// inout result: Self?) -> Bool
172
175
SWIFT_CC (swift)
173
- bool (*conditionallyBridgeFromObjectiveC)(
176
+ bool (*_protocolWitnessSignedPointer ( conditionallyBridgeFromObjectiveC) )(
174
177
HeapObject *sourceValue,
175
178
OpaqueValue *result,
176
179
SWIFT_CONTEXT const Metadata *self,
0 commit comments