Files
kotlin/compiler/testData/codegen/boxWithStdlib/when/switchOptimizationStatement.kt

35 lines
588 B
Kotlin

fun exhaustive(x: Int): Int {
var r: Int
when (x) {
1 -> r = 1
2 -> r = 2
3 -> r = 3
else -> r = 4
}
return r
}
fun nonExhaustive(x: Int): Int {
var r: Int = 4
when (x) {
1 -> r = 1
2 -> r = 2
3 -> r = 3
}
return r
}
fun box(): String {
var result = (0..3).map(::exhaustive).makeString()
if (result != "4, 1, 2, 3") return "exhaustive:" + result
result = (0..3).map(::nonExhaustive).makeString()
if (result != "4, 1, 2, 3") return "non-exhaustive:" + result
return "OK"
}