| // REQUIRES: objc_interop |
| // RUN: %empty-directory(%t.mod) |
| // RUN: %target-swift-frontend -emit-module -o %t.mod/Cities.swiftmodule %S/Inputs/Cities.swift -module-name Cities -parse-as-library |
| // RUN: %empty-directory(%t) && %target-swift-frontend -c -update-code -disable-migrator-fixits -I %t.mod -primary-file %s -api-diff-data-file %S/Inputs/API-function-hoist.json -emit-migrated-file-path %t/function-hoist.swift.result -emit-remap-file-path %t/function-hoist.swift.remap -o /dev/null |
| // RUN: diff -u %S/function-hoist.swift.expected %t/function-hoist.swift.result |
| |
| import Cities |
| |
| func getCities() -> [Cities] { return [] } |
| |
| func foo(_ c : Cities) { |
| setCityProperty1(c, 1) |
| setCityProperty1(getCities()[0], 1) |
| globalCityFunc() |
| setCityProperty2(c, 1+1+1, 2+2) |
| setCityProperty2(getCities()[0], 1+1+1, 2+2) |
| globalCityFunc2(c) |
| globalCityFunc2(getCities()[0]) |
| _ = globalCityFunc3(c, 1) + 2 |
| _ = globalCityFunc4(c, 1, 2) + 2 |
| _ = globalCityFunc5() + 2 + 1 |
| var vc = Cities(x : 1) |
| _ = globalCityPointerTaker(&vc, 2, 2) |
| _ = globalCityPointerTaker(getCities(), 2, 2) |
| } |
| |
| func foo1(_ flag: Bool, _ c1: Cities, _ c2: Cities) { |
| _ = globalCityFunc4(flag ? c1 : c2, 1 + 1, 2 + 2) |
| } |