[FIR] Properly set isReceiver for implicit invoke on function types

This commit is contained in:
Nikolay Lunyak
2023-11-28 12:01:34 +02:00
committed by Space Team
parent 2bd77d5cdc
commit c69c34ff8b
11 changed files with 21 additions and 45 deletions
@@ -1,16 +1,16 @@
fun test1() {
<!ARGUMENT_TYPE_MISMATCH!>1<!>. (fun String.(i: Int) = i )(1)
<!ARGUMENT_TYPE_MISMATCH!>1<!>.(label@ fun String.(i: Int) = i )(1)
1. <!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>(fun String.(i: Int) = i )<!>(1)
1.<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>(label@ fun String.(i: Int) = i )<!>(1)
}
fun test2(f: String.(Int) -> Unit) {
<!ARGUMENT_TYPE_MISMATCH!>11<!>.(f)(1)
<!ARGUMENT_TYPE_MISMATCH!>11<!>.(f)<!NO_VALUE_FOR_PARAMETER!>()<!>
11.(<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>f<!>)(1)
11.(f)<!NO_VALUE_FOR_PARAMETER!>()<!>
}
fun test3() {
fun foo(): String.(Int) -> Unit = {}
<!ARGUMENT_TYPE_MISMATCH!>1<!>.(foo())(1)
1.<!UNRESOLVED_REFERENCE_WRONG_RECEIVER!>(foo())<!>(1)
}