mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
DI: Warn on non-delegating cross-module struct initializers
...as detected by initializing an individual field without having initialized the whole object (via `self = value`). This only applies in pre-Swift-5 mode because the next commit will treat all cross-module struct initializers as delegating in Swift 5.
This commit is contained in:
@@ -582,17 +582,17 @@ extension Bool : _ObjectiveCBridgeable {
|
||||
extension CGFloat : _ObjectiveCBridgeable {
|
||||
@available(swift, deprecated: 4, renamed: "init(truncating:)")
|
||||
public init(_ number: NSNumber) {
|
||||
native = CGFloat.NativeType(truncating: number)
|
||||
self.init(CGFloat.NativeType(truncating: number))
|
||||
}
|
||||
|
||||
public init(truncating number: NSNumber) {
|
||||
native = CGFloat.NativeType(truncating: number)
|
||||
self.init(CGFloat.NativeType(truncating: number))
|
||||
}
|
||||
|
||||
public init?(exactly number: NSNumber) {
|
||||
var nativeValue: CGFloat.NativeType? = 0
|
||||
guard CGFloat.NativeType._conditionallyBridgeFromObjectiveC(number, result: &nativeValue) else { return nil }
|
||||
self.native = nativeValue!
|
||||
self.init(nativeValue!)
|
||||
}
|
||||
|
||||
@_semantics("convertToObjectiveC")
|
||||
|
||||
Reference in New Issue
Block a user