d5aed62410
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.
10 lines
200 B
Kotlin
Vendored
10 lines
200 B
Kotlin
Vendored
public fun bar(s: String) {
|
|
System.out.println("Length of $s is ${s.length()}")
|
|
}
|
|
|
|
public fun foo() {
|
|
var s: Any = "not null"
|
|
if (s is String)
|
|
bar(<!DEBUG_INFO_SMARTCAST!>s<!>)
|
|
}
|