JVM IR: Avoid direct invokes in callable reference tests
Due to the direct invoke optimization, most callable reference tests were not generating callable references/lambdas.
This commit is contained in:
committed by
Alexander Udalov
parent
f0238766df
commit
7d59c7689c
+6
-6
@@ -9,27 +9,27 @@ object A {
|
||||
@JvmStatic val c: String = "OK"
|
||||
|
||||
@JvmStatic fun test1() : String {
|
||||
return {b}()
|
||||
return {b}.let { it() }
|
||||
}
|
||||
|
||||
@JvmStatic fun test2() : String {
|
||||
return {test1()}()
|
||||
return {test1()}.let { it() }
|
||||
}
|
||||
|
||||
fun test3(): String {
|
||||
return {"1".test5()}()
|
||||
return {"1".test5()}.let { it() }
|
||||
}
|
||||
|
||||
@JvmStatic fun test4(): String {
|
||||
return {"1".test5()}()
|
||||
return {"1".test5()}.let { it() }
|
||||
}
|
||||
|
||||
@JvmStatic fun String.test5() : String {
|
||||
return {this + b}()
|
||||
return {this + b}.let { it() }
|
||||
}
|
||||
|
||||
fun test6(): String {
|
||||
return {c}()
|
||||
return {c}.let { it() }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user