fixed: smart cast of boolean variable didn't work in boolean expression
This commit is contained in:
@@ -37,5 +37,5 @@ fun f(): Unit {
|
||||
val y : Boolean? = true
|
||||
false || <!TYPE_MISMATCH!>y<!>
|
||||
<!TYPE_MISMATCH!>y<!> && true
|
||||
<!TYPE_MISMATCH!>y<!> && <!TYPE_MISMATCH!>1<!>
|
||||
<!TYPE_MISMATCH!>y<!> && <!CONSTANT_EXPECTED_TYPE_MISMATCH!>1<!>
|
||||
}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo1(b: Boolean, c: Int) {
|
||||
if (b && <!TYPE_MISMATCH!>c<!>) {}
|
||||
if (b || <!TYPE_MISMATCH!>c<!>) {}
|
||||
if (<!TYPE_MISMATCH!>c<!> && b) {}
|
||||
if (<!TYPE_MISMATCH!>c<!> || b) {}
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fun foo(b: Boolean?, c: Boolean) {
|
||||
if (b != null && <!DEBUG_INFO_AUTOCAST!>b<!>) {}
|
||||
if (b == null || <!DEBUG_INFO_AUTOCAST!>b<!>) {}
|
||||
if (b != null) {
|
||||
if (<!DEBUG_INFO_AUTOCAST!>b<!> && c) {}
|
||||
if (<!DEBUG_INFO_AUTOCAST!>b<!> || c) {}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user