// RUN: %target-run-simple-swift | %FileCheck %s // REQUIRES: executable_test func localFunc(_ x: Int) -> Int { func addToX(_ y: Int) -> Int { return x + y } return addToX(1) } func localFunc2(_ x: Int) -> (_ y: Int) -> Int { func addToX(_ y: Int) -> Int { return x + y } return addToX } // FIXME global vars func test() { // CHECK: 3 print(localFunc(2)) // CHECK: 5 print(localFunc2(2)(3)) var lf = localFunc // CHECK: 8 print(lf(7)) var lf2 = localFunc2 var lf2_ = lf2(5) // CHECK: 13 print(lf2_(8)) } test() // func map(_ fn: (T) -> ()) { print("Void overload") } func map(_ fn: (T) -> U) { print("Non-void overload") } map({()}) // CHECK: Void overload map({(x: Int) -> Int in x}) // CHECK: Non-void overload