Files
kotlin-fork/compiler/testData/diagnostics/tests/smartCasts/kt2422.kt
T
2013-12-11 19:53:50 +04:00

23 lines
571 B
Kotlin

package bar
class Test {
val foo: Int? = null
fun foo(o: Test) = foo == null && o.foo == null // ERROR warning: o.test == null is always true
fun bar(a: Test, b: Test) {
if (a.foo != null) {
useInt(<!TYPE_MISMATCH!>b.foo<!>)
}
if (a.foo != null) {
useInt(<!TYPE_MISMATCH!>foo<!>)
}
if (this.foo != null) {
useInt(<!DEBUG_INFO_AUTOCAST!>foo<!>)
}
if (foo != null) {
useInt(<!DEBUG_INFO_AUTOCAST!>this.foo<!>)
}
}
fun useInt(i: Int) = i
}