KT-5182 Data flow info is lost for 'when' branches
#KT-5158 Fixed #KT-4332 Fixed
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
fun foo(x: Number, y: Int) {
|
||||
when (x) {
|
||||
is Int -> <!DEBUG_INFO_AUTOCAST!>x<!> : Int
|
||||
y -> {}
|
||||
else -> {}
|
||||
}
|
||||
<!TYPE_MISMATCH!>x<!> : Int
|
||||
}
|
||||
|
||||
fun bar(x: Number) {
|
||||
when (x) {
|
||||
is Int -> <!DEBUG_INFO_AUTOCAST!>x<!> : Int
|
||||
else -> {}
|
||||
}
|
||||
<!TYPE_MISMATCH!>x<!> : Int
|
||||
}
|
||||
|
||||
fun whenWithoutSubject(x: Number) {
|
||||
when {
|
||||
(x is Int) -> <!DEBUG_INFO_AUTOCAST!>x<!> : Int
|
||||
else -> {}
|
||||
}
|
||||
<!TYPE_MISMATCH!>x<!> : Int
|
||||
}
|
||||
Reference in New Issue
Block a user