Files
Dmitriy Novozhilov 9724d81a49 [FIR] Support boolean elvis bound smartcasts
#KT-44511 Fixed
2021-02-09 15:20:36 +03:00

23 lines
409 B
Kotlin
Vendored

// !LANGUAGE: +BooleanElvisBoundSmartCasts
// ISSUE: KT-44511, also relates to KT-8492 and KT-26357
class A(val b: Boolean) {
fun foo() {}
}
fun test_1(a: A?) {
if (a?.b ?: false) {
a.foo() // OK
} else {
a<!UNSAFE_CALL!>.<!>foo() // Error
}
}
fun test_2(a: A?) {
if (a?.b ?: true) {
a<!UNSAFE_CALL!>.<!>foo() // Error
} else {
a.foo() // OK
}
}