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:
+3
-3
@@ -20,14 +20,14 @@ package test
|
||||
|
||||
import a.A
|
||||
|
||||
fun <T, R> T.with(f: T.() -> R) = <!INAPPLICABLE_CANDIDATE!>f<!>()
|
||||
fun <T, R> T.with(f: T.() -> R) = f()
|
||||
|
||||
fun A.extFun1() = b.length
|
||||
|
||||
// fun A.extFun2() = c.length // TODO fix KT-9953
|
||||
|
||||
val x1 = A("").with { b.<!UNRESOLVED_REFERENCE!>length<!> }
|
||||
val x1 = A("").with { b.length }
|
||||
|
||||
// val x2 = A("").with { c.length } // TODO fix KT-9953
|
||||
|
||||
val x3 = A.with { c.<!UNRESOLVED_REFERENCE!>length<!> }
|
||||
val x3 = A.with { c.length }
|
||||
Reference in New Issue
Block a user