4b35e3b135
Predictability estimation algorithm is completely new, but backward compatibility should present. A large set of tests. Some updated tests. Smart casts allowed for captured variables if they are not modified in closure #KT-9051 Fixed Also #KT-8643 Fixed Also #KT-7976 Fixed Correct handling of lambda arguments in functions #KT-9143 Fixed
22 lines
471 B
Kotlin
Vendored
22 lines
471 B
Kotlin
Vendored
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
|
fun run(f: () -> Unit) = 0
|
|
|
|
fun foo(arg: Int?) = run {
|
|
var x = arg
|
|
if (x == null) return@run
|
|
<!DEBUG_INFO_SMARTCAST!>x<!>.hashCode()
|
|
}
|
|
|
|
class My {
|
|
fun foo(arg: Int?) = run {
|
|
var x = arg
|
|
if (x == null) return@run
|
|
<!DEBUG_INFO_SMARTCAST!>x<!>.hashCode()
|
|
}
|
|
|
|
fun Int?.bar() = run {
|
|
var x = this
|
|
if (x == null) return@run
|
|
<!DEBUG_INFO_SMARTCAST!>x<!>.hashCode()
|
|
}
|
|
} |