JVM IR: Avoid direct lambda invokes in inline tests

This commit is contained in:
Steven Schäfer
2022-06-13 15:13:04 +02:00
committed by Alexander Udalov
parent f0760e0550
commit 2acfb3a41f
117 changed files with 211 additions and 210 deletions
@@ -21,7 +21,7 @@ inline fun vBox(crossinline action: () -> Unit) {
contract {
callsInPlace(action, InvocationKind.EXACTLY_ONCE)
}
return { action() }()
return { action() }.let { it() }
}
inline fun button(onAction: () -> Unit) {
@@ -26,7 +26,7 @@ inline fun baz(crossinline exactly_once: () -> Unit) {
callsInPlace(exactly_once, InvocationKind.EXACTLY_ONCE)
};
{ exactly_once() }()
{ exactly_once() }.let { it() }
}
// FILE: 2.kt
@@ -25,7 +25,7 @@ fun box(): String {
x = 42
{
x
}()
}.let { it() }
}
return if (res == 42 && x.inc() == 43) "OK" else "Fail: ${x.inc()}"
}