blob: 73b09a36f71c3ff07d1a664e82a4d6d1995f7b2f [file] [log] [blame]
// RUN: %target-swift-frontend -parse-as-library -module-name=test -primary-file %s -O -emit-sil | %FileCheck %s
// Check if the compiler can convert a partial_apply of a dead argument (an
// unused metatype) to a thin_to_thick_function
extension Int32 {
// This function has an unused metatype argument.
// CHECK-LABEL: sil [thunk] [always_inline] @_T0s5Int32V4testE8lessthanSbAB3lhs_AB3rhstFZ : $@convention(method) (Int32, Int32, @thin Int32.Type) -> Bool
public static func lessthan (lhs: Int32, rhs: Int32) -> Bool {
return lhs < rhs
}
}
// CHECK-LABEL: sil hidden @_T04test6callitSbs5Int32V_ADtcyF : $@convention(thin) () -> @owned @callee_owned (Int32, Int32) -> Bool
// CHECK: [[F:%[0-9]+]] = function_ref @_T0s5Int32V4testE8lessthanSbAB3lhs_AB3rhstFZTf4nnd_n
// CHECK: [[R:%[0-9]+]] = thin_to_thick_function [[F]]
// CHECK: return [[R]]
func callit() -> (Int32, Int32) -> Bool {
return (Int32.lessthan)
}