mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Reverts apple/swift#30006. It caused a regression that we'd like to address before re-landing: ```swift struct X { var cgf: CGFloat } func test(x: X?) { let _ = (x?.cgf ?? 0) <= 0.5 } ``` This reverts commit0a6b444b49. This reverts commited255596a6. This reverts commit3e01160a2f. This reverts commit96297b7e39. Resolves: rdar://problem/60185506
45 lines
920 B
Swift
45 lines
920 B
Swift
// RUN: %target-typecheck-verify-swift
|
|
|
|
func acceptInt(_ : inout Int) {}
|
|
func acceptDouble(_ : inout Double) {}
|
|
|
|
var i1 = 1
|
|
acceptInt(&i1)
|
|
var i2 = 1 + 2.0 + 1
|
|
acceptDouble(&i2)
|
|
|
|
|
|
func ternary<T>(_ cond: Bool,
|
|
_ ifTrue: @autoclosure () -> T,
|
|
_ ifFalse: @autoclosure () -> T) -> T {}
|
|
_ = ternary(false, 1, 2.5)
|
|
_ = ternary(false, 2.5, 1)
|
|
|
|
// <rdar://problem/18447543>
|
|
_ = ternary(false, 1, 2 as Int32)
|
|
_ = ternary(false, 1, 2 as Float)
|
|
|
|
func genericFloatingLiteral<T : ExpressibleByFloatLiteral>(_ x: T) {
|
|
var _ : T = 2.5
|
|
}
|
|
|
|
var d = 3.5
|
|
genericFloatingLiteral(d)
|
|
|
|
extension UInt32 {
|
|
func asChar() -> UnicodeScalar { return UnicodeScalar(self)! }
|
|
}
|
|
var ch = UInt32(65).asChar()
|
|
|
|
// <rdar://problem/14634379>
|
|
extension Int {
|
|
func call0() {}
|
|
typealias Signature = (a: String, b: String)
|
|
func call(_ x: Signature) {}
|
|
}
|
|
|
|
3.call((a: "foo", b: "bar"))
|
|
|
|
|
|
var (div, mod) = (9 / 4, 9 % 4)
|