FIR resolve: add partial support of extension lambda calls
Here we introduce ONLY_IMPLICIT_RECEIVER tower level to support extension lambda calls on local variables, and soften extension receiver checks to make such extensions visible & applicable. Also here we try to map arguments twice for functional types
This commit is contained in:
+4
-4
@@ -9,8 +9,8 @@ enum class E {
|
||||
|
||||
val foo: Any.() -> Unit = {}
|
||||
|
||||
fun f1() = E.FIRST.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
fun f2() = E.FIRST.(<!UNRESOLVED_REFERENCE!>foo<!>)()
|
||||
fun f3() = E.SECOND.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
fun f4() = E.SECOND.(<!UNRESOLVED_REFERENCE!>foo<!>)()
|
||||
fun f1() = E.FIRST.foo()
|
||||
fun f2() = E.FIRST.(foo)()
|
||||
fun f3() = E.SECOND.foo()
|
||||
fun f4() = E.SECOND.(foo)()
|
||||
fun f5() = E.SECOND.A()
|
||||
|
||||
+4
-4
@@ -9,8 +9,8 @@ enum class E {
|
||||
|
||||
val foo: Any.() -> Unit = {}
|
||||
|
||||
fun f1() = E.FIRST.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
fun f2() = E.FIRST.(<!UNRESOLVED_REFERENCE!>foo<!>)()
|
||||
fun f3() = E.SECOND.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||
fun f4() = E.SECOND.(<!UNRESOLVED_REFERENCE!>foo<!>)()
|
||||
fun f1() = E.FIRST.foo()
|
||||
fun f2() = E.FIRST.(foo)()
|
||||
fun f3() = E.SECOND.foo()
|
||||
fun f4() = E.SECOND.(foo)()
|
||||
fun f5() = E.SECOND.A()
|
||||
|
||||
Reference in New Issue
Block a user