blob: e55745c749a26f93bff05ccb69968a8d33ed0ad7 [file]
// ISSUE: KT-74673
// IGNORE_KLIB_BACKEND_ERRORS_WITH_CUSTOM_FIRST_PHASE: 2.0.0 2.1.0
// ^^^ KT-74673 fixed in 2.2.0-Beta1
fun interface Foo<P> : suspend (P) -> Unit
class Bar<P>(foo: Foo<P>)
fun <P> create(foo: Foo<P>): Bar<P> = Bar(foo)
// ######
class FooImpl<T> : Foo<T> {
override suspend fun invoke(p1: T) {}
}
fun <P> create2(foo: FooImpl<P>): Bar<P> = Bar(foo)
// ######
fun box(): String {
create<Int> {}
create2<Int>(FooImpl())
return "OK"
}