JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs

This commit is contained in:
Dmitry Petrov
2021-04-26 17:17:25 +03:00
committed by teamcityserver
parent bfb1a06f3d
commit 851980e36f
124 changed files with 1340 additions and 324 deletions
+5 -5
View File
@@ -1,16 +1,16 @@
package a.b
fun <T> eval(fn: () -> T) = fn()
interface Test {
fun invoke(): String {
return "OK"
}
}
private val a : Test = {
object : Test {
}
}()
private val a : Test = eval {
object : Test {}
}
fun box(): String {
return a.invoke();
@@ -1,5 +1,7 @@
fun <T> eval(fn: () -> T) = fn()
class A(
val a: String = {
val a: String = eval {
open class B() {
open fun s() : String = "O"
}
@@ -9,7 +11,7 @@ class A(
}
B().s() + o.s()
}()
}
)
fun box() : String {