1b4d26e490
Ideally, the type of `IrWhen` should be provided by type inference for a consistent behavior. `USED_AS_EXPRESSION` from CFG isn't always consistent with type inference, unfortunately. The behavior is now aligned with `if`. The type of `when` is kept when it *can* be an expression, instead of whether it is used or not.
10 lines
151 B
Kotlin
Vendored
10 lines
151 B
Kotlin
Vendored
// WITH_RUNTIME
|
|
|
|
fun test(b: Boolean, i: Int) {
|
|
if (b) {
|
|
when (i) {
|
|
0 -> 1
|
|
else -> null
|
|
}
|
|
} else null
|
|
} |