Files
kotlin-fork/compiler/testData/diagnostics/tests/smartCasts/loops/callBreakInsideDoWhile.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

15 lines
338 B
Kotlin
Vendored

fun bar(): Boolean { return true }
fun gav(arg: Any): String { return if (arg is String) arg else "" }
public fun foo(x: String?): Int {
var y: Any
do {
y = ""
y = gav(if (x == null) break else x)
} while (bar())
y.hashCode()
// x is null because of the break
return x.<!UNSAFE_CALL!>length<!>
}