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.
24 lines
466 B
Kotlin
Vendored
24 lines
466 B
Kotlin
Vendored
// WITH_STDLIB
|
|
|
|
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE")
|
|
@kotlin.jvm.JvmInline
|
|
value class Ucn(private val i: UInt)
|
|
|
|
interface Input<T> {
|
|
fun foo(n: Int = 0): T
|
|
}
|
|
|
|
fun Char.toUInt() = toInt().toUInt()
|
|
|
|
class Kx(val x: UInt) : Input<Ucn> {
|
|
override fun foo(n: Int): Ucn =
|
|
if (n < 0) Ucn(0u) else Ucn(x)
|
|
}
|
|
|
|
fun box(): String {
|
|
val p = Kx(42u).foo()
|
|
if (p.toString() != "Ucn(i=42)") throw AssertionError()
|
|
|
|
return "OK"
|
|
}
|