blob: f52e85ec2ac62e811c58d17755c5e184e7aed389 [file] [log] [blame]
// 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)