FIR checker: report UNSAFE_CALL for overloaded function calls

Previously if an unsafe call is to an overloaded function, FIR checkers
report NONE_APPLICABLE. This change instead report them as UNSAFE_CALL
or its variants.
This commit is contained in:
Tianyu Geng
2021-04-09 21:26:07 +03:00
committed by Mikhail Glukhikh
parent 92df1f575a
commit 454ae3b17a
30 changed files with 83 additions and 142 deletions
@@ -16,7 +16,7 @@ fun foo() {
val y: Int? = 0
val z: Int? = 0
bar(<!ARGUMENT_TYPE_MISMATCH!>if (y != null) y else z<!>, <!ARGUMENT_TYPE_MISMATCH!>y<!>)
y <!NONE_APPLICABLE!>+<!> 2
y <!UNSAFE_OPERATOR_CALL!>+<!> 2
baz(<!ARGUMENT_TYPE_MISMATCH!>y<!>, <!ARGUMENT_TYPE_MISMATCH!>y<!>, if (y == null) return else y, y)
baz(y, z!!, z, y)
}