JVM IR: Avoid direct lambda invokes in inline tests
This commit is contained in:
committed by
Alexander Udalov
parent
f0760e0550
commit
2acfb3a41f
+2
-2
@@ -28,10 +28,10 @@ package test
|
||||
//A lot of blank lines [Don't delete]
|
||||
//A lot of blank lines [Don't delete]
|
||||
|
||||
inline fun kValue(crossinline s: () -> String) = { s() + "K" }()
|
||||
inline fun kValue(crossinline s: () -> String): String { val lambda = { s() + "K" }; return lambda() }
|
||||
|
||||
inline fun lParams(initParams: () -> String = {
|
||||
{ "" + kValue { "O" } }()
|
||||
val lambda = { "" + kValue { "O" } }; lambda()
|
||||
}): String {
|
||||
val z = "body"
|
||||
return initParams()
|
||||
|
||||
+5
-5
@@ -16,7 +16,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
@@ -25,7 +25,7 @@ test/_1Kt
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
34#1:41
|
||||
*E
|
||||
@@ -36,9 +36,9 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
34#2:41
|
||||
@@ -50,7 +50,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
*E
|
||||
|
||||
+9
-9
@@ -16,7 +16,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
@@ -25,7 +25,7 @@ test/_1Kt
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
34#1:41
|
||||
*E
|
||||
@@ -36,9 +36,9 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
34#2:41
|
||||
@@ -50,7 +50,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
*E
|
||||
@@ -86,7 +86,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
@@ -95,7 +95,7 @@ test/_1Kt
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
34#1:41
|
||||
*E
|
||||
@@ -106,9 +106,9 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1$1
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
34#2:41
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ package test
|
||||
//A lot of blank lines [Don't delete]
|
||||
//A lot of blank lines [Don't delete]
|
||||
|
||||
inline fun kValue(crossinline s: () -> String) = { s() + "K" }()
|
||||
inline fun kValue(crossinline s: () -> String): String { val lambda = { s() + "K" }; return lambda() }
|
||||
|
||||
inline fun lParams(initParams: () -> String = {
|
||||
"" + kValue { "O" }
|
||||
|
||||
+2
-2
@@ -25,7 +25,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
@@ -39,7 +39,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,41:1
|
||||
*E
|
||||
|
||||
+3
-3
@@ -25,7 +25,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
@@ -39,7 +39,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,41:1
|
||||
*E
|
||||
@@ -77,7 +77,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ package test
|
||||
//A lot of blank lines [Don't delete]
|
||||
//A lot of blank lines [Don't delete]
|
||||
|
||||
inline fun kValue(crossinline s: () -> String) = { s() + "K" }()
|
||||
inline fun kValue(crossinline s: () -> String): String { val lambda = { s() + "K" }; return lambda() }
|
||||
|
||||
inline fun lParams(initParams: () -> String = {
|
||||
"" + kValue { "O" }
|
||||
|
||||
+2
-2
@@ -25,7 +25,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
@@ -39,7 +39,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,41:1
|
||||
*E
|
||||
|
||||
+3
-3
@@ -25,7 +25,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
@@ -39,7 +39,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,41:1
|
||||
*E
|
||||
@@ -77,7 +77,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$1
|
||||
test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
|
||||
package test
|
||||
inline fun inlineFun(capturedParam: String, crossinline lambda: () -> String = { capturedParam }): String {
|
||||
return {
|
||||
val lambda2 = {
|
||||
lambda()
|
||||
}()
|
||||
}; return lambda2()
|
||||
}
|
||||
|
||||
// FILE: 2.kt
|
||||
|
||||
@@ -5,7 +5,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$inlineFun$2
|
||||
test/_1Kt$inlineFun$lambda2$1
|
||||
*L
|
||||
1#1,13:1
|
||||
*E
|
||||
@@ -33,13 +33,13 @@ _2Kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,20:1
|
||||
7#2,2:21
|
||||
7#2,4:21
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
18#1:21,2
|
||||
18#1:21,4
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -48,7 +48,7 @@ Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$inlineFun$2
|
||||
test/_1Kt$inlineFun$lambda2$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$inlineFun$1
|
||||
*L
|
||||
|
||||
Reference in New Issue
Block a user