Skip to content

Commit e46c534

Browse files
committed
Update to use dynamic replacement for _NSNumberInitializer (swiftlang#5045)
1 parent cb3fec8 commit e46c534

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

Sources/Foundation/NSNumber.swift

+6-1
Original file line numberDiff line numberDiff line change
@@ -1176,7 +1176,7 @@ protocol _NSNumberCastingWithoutBridging {
11761176
extension NSNumber: _NSNumberCastingWithoutBridging {}
11771177

11781178
// Called by FoundationEssentials
1179-
internal final class _FoundationNSNumberInitializer : _NSNumberInitializer {
1179+
internal struct _FoundationNSNumberInitializer : _NSNumberInitializer {
11801180
public static func initialize(value: some BinaryInteger) -> Any {
11811181
if let int64 = Int64(exactly: value) {
11821182
return NSNumber(value: int64)
@@ -1189,3 +1189,8 @@ internal final class _FoundationNSNumberInitializer : _NSNumberInitializer {
11891189
NSNumber(value: value)
11901190
}
11911191
}
1192+
1193+
@_dynamicReplacement(for: _nsNumberInitializer())
1194+
private func _nsNumberInitializer_corelibs_foundation() -> _NSNumberInitializer.Type? {
1195+
return _FoundationNSNumberInitializer.self
1196+
}

0 commit comments

Comments
 (0)