Switch kotlin version to 1.7

* Change 1.6 to 1.7 constants
* Fix SAFE_CALL_WILL_CHANGE_NULLABILITY for testData
* Change EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_WARNING to EXPOSED_PROPERTY_TYPE_IN_CONSTRUCTOR_ERROR
* Change NON_EXHAUSTIVE_WHEN_STATEMENT to NO_ELSE_IN_WHEN
* Fix testData for SafeCallsAreAlwaysNullable
* Change T -> T & Any in test dumps
* Change INVALID_CHARACTERS_NATIVE_WARNING -> INVALID_CHARACTERS_NATIVE_ERROR
* TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_WARNING -> TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM_ERROR
This commit is contained in:
Mikhail Glukhikh
2021-12-23 17:55:36 +03:00
committed by Space
parent d741aaf82f
commit 53d6ac24e5
269 changed files with 624 additions and 1132 deletions
@@ -6,7 +6,7 @@
fun case_1(value_1: EnumClass?) {
val value_2: Int
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_1) {
<!NO_ELSE_IN_WHEN!>when<!> (value_1) {
EnumClass.NORTH -> funWithExactlyOnceCallsInPlace { value_2 = 1 }
EnumClass.SOUTH -> funWithExactlyOnceCallsInPlace { value_2 = 2 }
EnumClass.EAST -> funWithExactlyOnceCallsInPlace { value_2 = 4 }
@@ -16,11 +16,12 @@
fun case_1(value_1: EnumClass?) {
val value_2: Int
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_1) {
when (value_1) {
EnumClass.NORTH -> funWithExactlyOnceCallsInPlace { value_2 = 1 }
EnumClass.SOUTH -> funWithExactlyOnceCallsInPlace { value_2 = 2 }
EnumClass.EAST -> funWithExactlyOnceCallsInPlace { value_2 = 4 }
null -> funWithExactlyOnceCallsInPlace { value_2 = 5 }
else -> {}
}
<!UNINITIALIZED_VARIABLE!>value_2<!>.inc()
@@ -100,7 +100,7 @@ fun case_4(value_1: Number, value_2: (() -> Unit)?) {
// TESTCASE NUMBER: 5
fun case_5(value_1: Number?, value_2: String?) {
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_2.case_5(value_1)) {
<!NO_ELSE_IN_WHEN!>when<!> (value_2.case_5(value_1)) {
true -> {
println(value_2<!UNSAFE_CALL!>.<!>length)
println(value_1.toByte())
@@ -110,7 +110,7 @@ fun case_4(value_1: Number, value_2: (() -> Unit)?) {
// TESTCASE NUMBER: 5
fun case_5(value_1: Number?, value_2: String?) {
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_2.case_5(value_1)) {
when (value_2.case_5(value_1)) {
true -> {
println(value_2<!UNSAFE_CALL!>.<!>length)
println(value_1<!UNSAFE_CALL!>.<!>toByte())
@@ -119,6 +119,7 @@ fun case_5(value_1: Number?, value_2: String?) {
println(value_2<!UNSAFE_CALL!>.<!>length)
println(value_1.<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>inv<!>())
}
else -> {}
}
}
@@ -27,7 +27,7 @@ fun case_3(value_1: Any?, value_2: Any?) {
fun case_4(value_1: Any?, value_2: Number?) {
funWithReturns(value_1 is Float? && value_1 != null && value_2 != null)
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
// TESTCASE NUMBER: 5
@@ -38,7 +38,7 @@ class case_5_class {
val o = case_5_class()
funWithReturns(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null)
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
}
@@ -107,19 +107,19 @@ fun case_8(value_1: Any?, value_2: Any?) {
fun case_9(value_1: Any?, value_2: Number?) {
if (funWithReturnsTrue(value_1 is Float? && value_1 != null && value_2 != null)) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
if (!funWithReturnsFalse(value_1 is Float? && value_1 != null && value_2 != null)) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
if (funWithReturnsNotNull(value_1 is Float? && value_1 != null && value_2 != null) != null) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
if (funWithReturnsNull(value_1 is Float? && value_1 != null && value_2 != null) == null) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
}
@@ -131,22 +131,22 @@ class case_10_class {
val o = case_10_class()
if (funWithReturnsTrue(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null)) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
if (!funWithReturnsFalse(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null)) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
if (funWithReturnsNotNull(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null) != null) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
if (funWithReturnsNull(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null) == null) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
}
@@ -160,5 +160,5 @@ class case_10_class {
fun case_11(value_1: Any?, value_2: Any?, value_3: Any?) {
funWithReturnsAndInvertCondition(value_1 !is String || value_2 !is Number || <!USELESS_IS_CHECK!>value_3 !is Any?<!>)
println(value_1<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>.length)
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
@@ -36,7 +36,7 @@ fun case_3(value_1: Any?, value_2: Any?) {
fun case_4(value_1: Any?, value_2: Number?) {
funWithReturns(value_1 is Float? && value_1 != null && value_2 != null)
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
// TESTCASE NUMBER: 5
@@ -47,7 +47,7 @@ class case_5_class {
val o = case_5_class()
funWithReturns(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null)
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
}
@@ -116,19 +116,19 @@ fun case_8(value_1: Any?, value_2: Any?) {
fun case_9(value_1: Any?, value_2: Number?) {
if (funWithReturnsTrue(value_1 is Float? && value_1 != null && value_2 != null)) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
if (!funWithReturnsFalse(value_1 is Float? && value_1 != null && value_2 != null)) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
if (funWithReturnsNotNull(value_1 is Float? && value_1 != null && value_2 != null) != null) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
if (funWithReturnsNull(value_1 is Float? && value_1 != null && value_2 != null) == null) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
}
@@ -140,22 +140,22 @@ class case_10_class {
val o = case_10_class()
if (funWithReturnsTrue(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null)) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
if (!funWithReturnsFalse(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null)) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
if (funWithReturnsNotNull(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null) != null) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
if (funWithReturnsNull(value_1 is Float? && value_1 != null && value_2 != null && o.prop_1 != null && this.prop_1 != null) == null) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
}
@@ -169,5 +169,5 @@ class case_10_class {
fun case_11(value_1: Any?, value_2: Any?, value_3: Any?) {
funWithReturnsAndInvertCondition(value_1 !is String || value_2 !is Number || <!USELESS_IS_CHECK!>value_3 !is Any?<!>)
println(<!DEBUG_INFO_SMARTCAST!>value_1<!><!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>.length)
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!><!DEBUG_INFO_SMARTCAST!>value_2<!><!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(<!DEBUG_INFO_SMARTCAST!>value_2<!><!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
}
@@ -103,7 +103,7 @@ class case_3_class {
val o = case_3_class()
contracts.case_3(value_1, value_2, o.prop_1, this.prop_1)
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
}
@@ -155,22 +155,22 @@ class case_6_class {
val o = case_6_class()
if (contracts.case_6_1(value_1, value_2, o.prop_1, this.prop_1)) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
if (!contracts.case_6_2(value_1, value_2, o.prop_1, this.prop_1)) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
if (contracts.case_6_3(value_1, value_2, o.prop_1, this.prop_1) != null) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
if (contracts.case_6_4(value_1, value_2, o.prop_1, this.prop_1) == null) {
println(value_1.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(o.prop_1.plus(3))
}
}
@@ -111,7 +111,7 @@ class case_3_class {
val o = case_3_class()
contracts.case_3(value_1, value_2, o.prop_1, this.prop_1)
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
}
@@ -163,22 +163,22 @@ class case_6_class {
val o = case_6_class()
if (contracts.case_6_1(value_1, value_2, o.prop_1, this.prop_1)) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
if (!contracts.case_6_2(value_1, value_2, o.prop_1, this.prop_1)) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
if (contracts.case_6_3(value_1, value_2, o.prop_1, this.prop_1) != null) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
if (contracts.case_6_4(value_1, value_2, o.prop_1, this.prop_1) == null) {
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.dec())
println(<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte()<!>)
println(value_2<!UNNECESSARY_SAFE_CALL!>?.<!>toByte())
println(<!DEBUG_INFO_SMARTCAST!>o.prop_1<!>.plus(3))
}
}
@@ -105,7 +105,7 @@ fun case_4(value_1: Number, value_2: (() -> Unit)?) {
* ISSUES: KT-26612
*/
fun case_5(value_1: Number?, value_2: String?) {
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_2.case_5(value_1)) {
<!NO_ELSE_IN_WHEN!>when<!> (value_2.case_5(value_1)) {
true -> {
println(value_2.length)
println(value_1.toByte())
@@ -115,7 +115,7 @@ fun case_4(value_1: Number, value_2: (() -> Unit)?) {
* ISSUES: KT-26612
*/
fun case_5(value_1: Number?, value_2: String?) {
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_2.case_5(value_1)) {
when (value_2.case_5(value_1)) {
true -> {
println(value_2<!UNSAFE_CALL!>.<!>length)
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.toByte())
@@ -124,6 +124,7 @@ fun case_5(value_1: Number?, value_2: String?) {
println(value_2<!UNSAFE_CALL!>.<!>length)
println(<!DEBUG_INFO_SMARTCAST!>value_1<!>.inv())
}
else -> {}
}
}
@@ -38,7 +38,7 @@ fun case_4(x: Any) {
fun case_5(x: Any?) {
if (!(x !is Nothing?)) {
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Nothing")!>x<!>
<!SAFE_CALL_WILL_CHANGE_NULLABILITY!><!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Nothing")!>x<!><!UNNECESSARY_SAFE_CALL!>?.<!><!UNRESOLVED_REFERENCE!>inv<!>()<!>
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Nothing")!>x<!><!UNNECESSARY_SAFE_CALL!>?.<!><!UNRESOLVED_REFERENCE!>inv<!>()
}
}
@@ -70,7 +70,7 @@ fun case_8(x: Any?) {
fun case_9(x: Any?) {
if (!!(x !is Nothing?)) else {
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Nothing")!>x<!>
<!SAFE_CALL_WILL_CHANGE_NULLABILITY!><!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Nothing")!>x<!><!UNNECESSARY_SAFE_CALL!>?.<!><!UNRESOLVED_REFERENCE!>inv<!>()<!>
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any? & kotlin.Nothing")!>x<!><!UNNECESSARY_SAFE_CALL!>?.<!><!UNRESOLVED_REFERENCE!>inv<!>()
}
}
@@ -53,7 +53,7 @@ fun case_3(x: Class?) {
* ISSUES: KT-30376
*/
fun case_4(x: Class?) {
if (<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>x!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8<!>?.prop_8?.prop_8?.prop_8 == null == true) else {
if (x!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8?.prop_8?.prop_8?.prop_8 == null == true) else {
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>.prop_8
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>.prop_8.prop_8
@@ -68,7 +68,7 @@ fun case_4(x: Class?) {
* ISSUES: KT-30376
*/
fun case_5(x: Class?) {
if (<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>x?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8<!>?.prop_8?.prop_8 == null == true) else {
if (x?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8?.prop_8?.prop_8 == null == true) else {
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>.prop_8
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>.prop_8.prop_8
@@ -83,7 +83,7 @@ fun case_5(x: Class?) {
* ISSUES: KT-30376
*/
fun case_6(x: Class?) {
if (<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>x?.prop_8?.prop_8?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8<!> == null == true) else {
if (x?.prop_8?.prop_8?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8 == null == true) else {
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>.prop_8
<!DEBUG_INFO_EXPRESSION_TYPE("Class? & Class")!>x<!>.prop_8.prop_8
@@ -62,7 +62,7 @@ fun case_3(x: Class?) {
* ISSUES: KT-30376
*/
fun case_4(x: Class?) {
if (<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>x!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8<!>?.prop_8?.prop_8?.prop_8 == null == true) else {
if (x!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8?.prop_8?.prop_8?.prop_8 == null == true) else {
<!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?")!>x<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?"), DEBUG_INFO_SMARTCAST!>x<!>.prop_8<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?"), DEBUG_INFO_SMARTCAST!>x<!>.prop_8<!><!UNSAFE_CALL!>.<!>prop_8<!>
@@ -77,7 +77,7 @@ fun case_4(x: Class?) {
* ISSUES: KT-30376
*/
fun case_5(x: Class?) {
if (<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>x?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8<!>?.prop_8?.prop_8 == null == true) else {
if (x?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8?.prop_8?.prop_8 == null == true) else {
<!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?")!>x<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?"), DEBUG_INFO_SMARTCAST!>x<!>.prop_8<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class"), DEBUG_INFO_SMARTCAST!><!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?"), DEBUG_INFO_SMARTCAST!>x<!>.prop_8<!>.prop_8<!>
@@ -92,7 +92,7 @@ fun case_5(x: Class?) {
* ISSUES: KT-30376
*/
fun case_6(x: Class?) {
if (<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>x?.prop_8?.prop_8?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8<!> == null == true) else {
if (x?.prop_8?.prop_8?.prop_8!!<!UNNECESSARY_SAFE_CALL!>?.<!>prop_8 == null == true) else {
<!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?")!>x<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?"), DEBUG_INFO_SMARTCAST!>x<!>.prop_8<!>
<!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?")!><!DEBUG_INFO_EXPRESSION_TYPE("Class"), DEBUG_INFO_SMARTCAST!><!DEBUG_INFO_EXPRESSION_TYPE("Class & Class?"), DEBUG_INFO_SMARTCAST!>x<!>.prop_8<!>.prop_8<!>
@@ -137,7 +137,7 @@ fun case_7() {
var b = a
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.String")!>b<!>
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.String")!>b<!>.length
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (true) {
<!NO_ELSE_IN_WHEN!>when<!> (true) {
true -> b = a
}
@@ -146,8 +146,9 @@ fun case_7() {
var b = a
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.String")!>b<!>
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.String"), DEBUG_INFO_SMARTCAST!>b<!>.length
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (true) {
when (true) {
true -> b = a
else -> {}
}
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any & kotlin.String")!>b<!>