Files
kotlin-fork/compiler/testData/codegen/box/callableReference/callableReferenceOfStaticMethod.kt
T
Victor Petukhov 43a83dd07a Don't add LHS type constraint for callable references too early, before the resolution
The constraint depends on a resolution candidate, because it can be Java static or companion object's member (don't need add constraint in this case)

^KT-41978 Fixed
2021-10-01 13:33:21 +03:00

39 lines
789 B
Kotlin
Vendored

// DONT_TARGET_EXACT_BACKEND: WASM
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// FILE: Sample.java
public class Sample {
public static int max(int x, int y) {
if (x > y) {
return x;
} else {
return y;
}
}
}
// FILE: main.kt
import kotlin.reflect.KFunction2
abstract class Checker {
fun check(): String {
return run(
Sample::max,
{ x, y -> x > y }
)
}
abstract fun <T1, T2, R> run(method: KFunction2<T1, T2, R>, fn: (T1, T2) -> Boolean): String
}
fun box(): String {
var result = ( object : Checker() {
override fun <T1, T2, R> run(method: KFunction2<T1, T2, R>, fn: (T1, T2) -> Boolean): String {
return "OK"
}
} ).check()
return result
}