[FIR] Assume SafeCallsAreAlwaysNullable is always on
This commit is contained in:
committed by
Space Team
parent
be5850112a
commit
72823657c9
@@ -0,0 +1,7 @@
|
||||
// !LANGUAGE: -SafeCallsAreAlwaysNullable
|
||||
// http://youtrack.jetbrains.net/issue/KT-418
|
||||
|
||||
fun ff() {
|
||||
val i: Int = 1
|
||||
val a: Int = <!INITIALIZER_TYPE_MISMATCH!>i<!SAFE_CALL_WILL_CHANGE_NULLABILITY!><!UNNECESSARY_SAFE_CALL!>?.<!>plus(2)<!><!>
|
||||
}
|
||||
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
// !LANGUAGE: -SafeCallsAreAlwaysNullable
|
||||
// http://youtrack.jetbrains.net/issue/KT-418
|
||||
|
||||
|
||||
+1
-1
@@ -8,6 +8,6 @@ fun foo(): String {
|
||||
}
|
||||
fun bar(): String {
|
||||
val x = fn() ?: return ""
|
||||
val y = x<!SAFE_CALL_WILL_CHANGE_NULLABILITY!><!UNNECESSARY_SAFE_CALL!>?.<!>let { throw Exception() }<!> <!USELESS_ELVIS!>?: "unreachable"<!>
|
||||
val y = x<!SAFE_CALL_WILL_CHANGE_NULLABILITY!><!UNNECESSARY_SAFE_CALL!>?.<!>let { throw Exception() }<!> ?: "unreachable"
|
||||
return y
|
||||
}
|
||||
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
// LANGUAGE: -SafeCallsAreAlwaysNullable
|
||||
// DIAGNOSTICS: -UNNECESSARY_SAFE_CALL
|
||||
// ISSUE: KT-46860
|
||||
|
||||
interface A {
|
||||
fun id(): A
|
||||
|
||||
fun foo(): String
|
||||
}
|
||||
|
||||
fun test_1(a: A) {
|
||||
val s = a.id().id().id().id().id().id().id().id()<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>?.foo()<!><!UNSAFE_CALL!>.<!>length
|
||||
}
|
||||
|
||||
fun test_2(a: A) {
|
||||
val s = a.id()
|
||||
.id()
|
||||
.id()
|
||||
.id()
|
||||
<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>?.id()<!>
|
||||
<!UNSAFE_CALL!>.<!>id()
|
||||
.id()
|
||||
.id()
|
||||
<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>?.foo()<!>
|
||||
?.length
|
||||
}
|
||||
|
||||
fun test_3(a: A) {
|
||||
val s = a.id()<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>?.
|
||||
id()<!><!UNSAFE_CALL!>.<!>
|
||||
id()<!SAFE_CALL_WILL_CHANGE_NULLABILITY!>?.
|
||||
foo()<!><!UNSAFE_CALL!>.<!>
|
||||
length
|
||||
}
|
||||
-1
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
// LANGUAGE: -SafeCallsAreAlwaysNullable
|
||||
// DIAGNOSTICS: -UNNECESSARY_SAFE_CALL
|
||||
// ISSUE: KT-46860
|
||||
|
||||
Reference in New Issue
Block a user