FIR checker: differentiate UNSAFE_CALL from INAPPLICABLE_CANDIDATE
To do so, inside the root cause of inapplicable candidate errors, we will record expected/actual type of receiver, if any. That will help identifying inapplicable calls on nullable receiver.
This commit is contained in:
committed by
Mikhail Glukhikh
parent
4b823eca21
commit
e72ddbcbfe
+3
-3
@@ -4,11 +4,11 @@ fun baz(b: Boolean): Boolean = !b
|
||||
fun foo() {
|
||||
val x: Int? = null
|
||||
|
||||
bar(<!INAPPLICABLE_CANDIDATE!>-<!>x)
|
||||
bar(<!UNSAFE_CALL!>-<!>x)
|
||||
if (x != null) bar(-x)
|
||||
bar(<!INAPPLICABLE_CANDIDATE!>-<!>x)
|
||||
bar(<!UNSAFE_CALL!>-<!>x)
|
||||
|
||||
val b: Boolean? = null
|
||||
baz(<!INAPPLICABLE_CANDIDATE!>!<!>b)
|
||||
baz(<!UNSAFE_CALL!>!<!>b)
|
||||
if (b != null) baz(!b)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user