Files
kotlin-fork/compiler/testData/diagnostics/tests/smartCasts/loops/whenInsideWhileTrue.fir.kt
T
Jinseong Jeon e72ddbcbfe FIR checker: differentiate UNSAFE_CALL from INAPPLICABLE_CANDIDATE
To do so, inside the root cause of inapplicable candidate errors,
we will record expected/actual type of receiver, if any.
That will help identifying inapplicable calls on nullable receiver.
2021-01-29 16:54:23 +03:00

13 lines
301 B
Kotlin
Vendored

public fun foo(x: String?): Int {
loop@ while (true) {
when (x) {
null -> break@loop
"abc" -> return 0
"xyz" -> return 1
else -> x.length
}
}
// x is null because of the break
return x.<!UNSAFE_CALL!>length<!>
}