c7a7f31e82
Metadata for KFunction classes is now longer serialized along with built-in classes. This effectively means that it's no longer possible to find KFunction classes via dependency on built-ins. There should be a kotlin-runtime library in the specified classpath for reflection types to be resolvable. A lot of tests were moved and changed, because tests on callable references require stdlib in classpath from now on
24 lines
559 B
Kotlin
24 lines
559 B
Kotlin
fun foo(s: String) {}
|
|
|
|
class A {
|
|
fun bar(): String = ""
|
|
}
|
|
|
|
fun A.baz() {}
|
|
|
|
|
|
fun box(): String {
|
|
val f = "${::foo}"
|
|
if (f != "kotlin.reflect.KFunctionImpl1<java.lang.String, kotlin.Unit>") return "Fail foo: $f"
|
|
|
|
val nameOfA = (A() as java.lang.Object).getClass().getName()
|
|
|
|
val g = "${A::bar}"
|
|
if (g != "kotlin.reflect.KMemberFunctionImpl0<$nameOfA, java.lang.String>") return "Fail bar: $g"
|
|
|
|
val h = "${A::baz}"
|
|
if (h != "kotlin.reflect.KExtensionFunctionImpl0<$nameOfA, kotlin.Unit>") return "Fail baz: $h"
|
|
|
|
return "OK"
|
|
}
|