JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs
This commit is contained in:
committed by
teamcityserver
parent
bfb1a06f3d
commit
851980e36f
@@ -4,16 +4,18 @@
|
||||
|
||||
fun box(): String {
|
||||
|
||||
val classInLambda = {
|
||||
val lambda = {
|
||||
class Z {}
|
||||
Z()
|
||||
}()
|
||||
}
|
||||
|
||||
val classInLambda = lambda()
|
||||
|
||||
val enclosingMethod = classInLambda.javaClass.getEnclosingMethod()
|
||||
if (enclosingMethod?.getName() != "invoke") return "method: $enclosingMethod"
|
||||
|
||||
val enclosingClass = classInLambda.javaClass.getEnclosingClass()!!.getName()
|
||||
if (enclosingClass != "ClassInLambdaKt\$box\$classInLambda\$1") return "enclosing class: $enclosingClass"
|
||||
if (enclosingClass != "ClassInLambdaKt\$box\$lambda\$1") return "enclosing class: $enclosingClass"
|
||||
|
||||
val declaringClass = classInLambda.javaClass.getDeclaringClass()
|
||||
if (declaringClass != null) return "class has a declaring class"
|
||||
|
||||
Reference in New Issue
Block a user