c7435ba760
We are going to deprecate `WITH_RUNTIME` directive. The main reason behind this change is that `WITH_STDLIB` directive better describes its meaning, specifically it will add kotlin stdlib to test's classpath.
23 lines
519 B
Kotlin
Vendored
23 lines
519 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// WITH_STDLIB
|
|
|
|
import kotlin.reflect.KCallable
|
|
|
|
private fun check(label: String, fn: Any) {
|
|
if (fn !is KCallable<*>) {
|
|
throw AssertionError("$label is not KCallable, ${fn::class.java.simpleName}")
|
|
}
|
|
}
|
|
|
|
fun checkVarargAsArray(label: String, fn: (IntArray) -> C) = check(label, fn)
|
|
|
|
fun withVarargs(vararg xs: Int): C = C(*xs)
|
|
class C(vararg xs: Int)
|
|
|
|
fun box(): String {
|
|
checkVarargAsArray("::withVarargs", ::withVarargs)
|
|
checkVarargAsArray("::C", ::C)
|
|
|
|
return "OK"
|
|
}
|