// TARGET_BACKEND: JVM // WITH_STDLIB import kotlin.reflect.KClass fun box(): String { val arr: Array> = arrayOf(String::class, Number::class) as Array> val xs = arr.myMap { it.java }.toList() val ys = arr.myMap(KClass<*>::java).toList() if (xs != ys) return "fail1" if (!arr.foo()) return "fail2" return "OK" } public inline fun Array.myMap(transform: (A) -> B): List { return mapTo(ArrayList(size), transform) } fun Any?.foo(): Boolean { val result = (this as Array>).map(KClass<*>::java).toList() val withLambda = (this as Array>).map { it.java }.toList() return result == withLambda }