Files
kotlin-fork/idea/testData/checker/BinaryCallsOnNullableValues.kt
T
Mikhail Glukhikh d5aed62410 Smart casts for local variables not captured in a closure and not changed in a loop, see #KT-3175.
isLocalVariable added. Assignment / initialization analysis.
Control whether a variable is changed in a loop at the beginning and at the end of the loop.
Control whether a variable is captured in a closure. #KT-3175  Fixed. #KT-2266  Fixed.
Tests for variable null safety and for variables is/as operations.
Loop / closure / variable property tests are included.
Old tests changed in accordance with KT-3175. In particular, all three of testSmartcastImpossible were fixed.
2015-04-16 20:10:58 +03:00

31 lines
502 B
Kotlin

class A() {
override fun equals(<warning>a</warning> : Any?) : Boolean = false
}
fun f(): Unit {
var x: Int? = <warning>1</warning>
x = 1
x + 1
x plus 1
x < 1
x += 1
x == 1
x != 1
<error>A() == 1</error>
<error>x === "1"</error>
<error>x !== "1"</error>
x === 1
x !== 1
x..2
x in 1..2
val y : Boolean? = true
<warning>false || <error>y</error></warning>
<warning><error>y</error> && true</warning>
<warning><error>y</error> && <error>1</error></warning>
}