FIR DFA: do not remove statements about LHS of !!
Value equality statements about the result also propagate to left-hand side, so these statements can still be useful.
This commit is contained in:
Vendored
+1
-1
@@ -63,7 +63,7 @@ fun case_2(value_1: Int?) {
|
||||
// TESTCASE NUMBER: 3
|
||||
fun case_3(value_1: Int?) {
|
||||
if (contracts.case_3(value_1)!!) {
|
||||
value_1<!UNSAFE_CALL!>.<!>inv()
|
||||
value_1.inv()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ inline fun <reified T : CharSequence>case_3(x: Any?) {
|
||||
// TESTCASE NUMBER: 4
|
||||
inline fun <reified T : CharSequence>case_4(x: Any?) {
|
||||
(x as? T)!!
|
||||
if (x is T?) {
|
||||
if (<!USELESS_IS_CHECK!>x is T?<!>) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>.length
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>.get(0)
|
||||
|
||||
@@ -49,7 +49,7 @@ inline fun <reified T : CharSequence>case_3(x: Any?) {
|
||||
// TESTCASE NUMBER: 4
|
||||
inline fun <reified T : CharSequence>case_4(x: Any?) {
|
||||
(x as? T)!!
|
||||
if (x is T?) {
|
||||
if (<!USELESS_IS_CHECK!>x is T?<!>) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>.length
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>.get(0)
|
||||
|
||||
@@ -49,7 +49,7 @@ inline fun <reified T : CharSequence>case_3(x: Any?) {
|
||||
// TESTCASE NUMBER: 4
|
||||
inline fun <reified T : CharSequence>case_4(x: Any?) {
|
||||
(x as? T)!!
|
||||
if (x is T?) {
|
||||
if (<!USELESS_IS_CHECK!>x is T?<!>) {
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>.length
|
||||
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & T?!!")!>x<!>.get(0)
|
||||
|
||||
Reference in New Issue
Block a user