[FIR] Implement new bound smartcast algorithm

#KT-36055 Fixed
This commit is contained in:
Dmitriy Novozhilov
2020-02-10 17:14:58 +03:00
parent 40f907ec2f
commit 6735cc8937
103 changed files with 2197 additions and 309 deletions
@@ -27,11 +27,11 @@ fun testUnsafeCaptureVarInInitializer() {
val s = when (val y = run { x = null; 32 }) {
0 -> {
x.<!UNRESOLVED_REFERENCE!>inc<!>() // NB smart cast should be impossible
x.<!INAPPLICABLE_CANDIDATE!>inc<!>() // NB smart cast should be impossible
"0"
}
else -> "!= 0"
}
x.<!UNRESOLVED_REFERENCE!>inc<!>() // NB smart cast should be impossible
x.<!INAPPLICABLE_CANDIDATE!>inc<!>() // NB smart cast should be impossible
}