24 lines
696 B
Kotlin
Vendored
24 lines
696 B
Kotlin
Vendored
// !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(<!TYPE_MISMATCH, TYPE_MISMATCH!>fun<!EXPECTED_PARAMETERS_NUMBER_MISMATCH!>()<!> = materialize()<!>))
|
|
}
|