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:
Mikhail Glukhikh
2019-12-23 15:56:50 +03:00
parent 49e94f1ee3
commit de50f8aef3
65 changed files with 292 additions and 144 deletions
+1 -1
View File
@@ -3,7 +3,7 @@
fun string(init: StringBuilder.() -> Unit): String{
val answer = StringBuilder()
answer.<!UNRESOLVED_REFERENCE!>init<!>()
answer.init()
return answer.toString()
}
@@ -16,7 +16,7 @@ fun B.b() {
fun test() {
fun <T> without(f: T.() -> Unit): Unit = (null!!).<!UNRESOLVED_REFERENCE!>f<!>()
fun <T> without(f: T.() -> Unit): Unit = (null!!).f()
without<B>() b@ {
object : A {
override fun foo() {