blob: 3d75ecf7193c422ac0744ea2529b56e309eff29d [file] [log] [blame]
// REQUIRES: plus_zero_runtime
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -emit-silgen -enable-sil-ownership %s | %FileCheck %s
// REQUIRES: objc_interop
import Foundation
@objc protocol P {
func p(_: String)
}
@objc class C: NSObject {
func c(_: String) {}
}
// CHECK-LABEL: sil shared [serializable] [thunk] @$S{{.*}}1P{{.*}}1p{{.*}} : $@convention(method) <Self where Self : P> (@guaranteed String, @guaranteed Self) -> ()
func foo(x: Bool, y: C & P) -> (String) -> () {
return x ? y.c : y.p
}