eff5f3a242
^KT-38890 Fixed ^KT-38439 Fixed
25 lines
647 B
Kotlin
Vendored
25 lines
647 B
Kotlin
Vendored
// !LANGUAGE: +NewInference
|
|
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
|
|
|
fun take(fn: () -> List<String>) {}
|
|
fun <L> inferFromLambda(fn: () -> L): L = TODO()
|
|
fun <L> inferFromLambda2(fn: (Int) -> L): L = TODO()
|
|
|
|
fun <T> materialize(): T = TODO()
|
|
fun <I> id(arg: I) = arg
|
|
|
|
fun testFunctions() {
|
|
take { materialize() }
|
|
take(fun() = materialize())
|
|
take(fun(): List<String> = materialize())
|
|
take(fun(): List<String> {
|
|
return materialize()
|
|
})
|
|
}
|
|
|
|
fun testNestedCalls() {
|
|
id<String>(inferFromLambda { materialize() })
|
|
id<String>(inferFromLambda(fun() = materialize()))
|
|
id<String>(inferFromLambda2(fun() = materialize()))
|
|
}
|