When now tries to smart cast subject to not-null if contains no null case #KT-7857 Fixed

Some new tests + some fixed tests
This commit is contained in:
Mikhail Glukhikh
2015-06-01 10:40:44 +03:00
parent de12771c0f
commit dea2ec9da6
15 changed files with 297 additions and 9 deletions
@@ -0,0 +1,13 @@
// KT-7857: when exhaustiveness does not take previous nullability checks into account
fun foo(arg: Boolean?): Int {
if (arg != null) {
return when (<!DEBUG_INFO_SMARTCAST!>arg<!>) {
true -> 1
false -> 0
// else or null branch should not be required here!
}
}
else {
return -1
}
}