Files
kotlin-fork/js/js.translator/testData/box/inline/inlineFunctionInLambda.kt
T
2022-04-11 10:37:21 +00:00

26 lines
673 B
Kotlin
Vendored

// EXPECTED_REACHABLE_NODES: 1283
package foo
// CHECK_CONTAINS_NO_CALLS: doNothingNoInline
internal inline fun <T> doNothing1(a: T): T {
return a
}
internal inline fun <T> doNothing2(a: T, f: (T) -> T): T {
return f(a)
}
// CHECK_BREAKS_COUNT: function=doNothingNoInline count=0 TARGET_BACKENDS=JS_IR
// CHECK_LABELS_COUNT: function=doNothingNoInline name=$l$block count=0 TARGET_BACKENDS=JS_IR
internal fun doNothingNoInline(a: Int): Int {
return doNothing2(a, { x -> doNothing1(x)})
}
fun box(): String {
assertEquals(1, doNothingNoInline(1))
assertEquals(12, doNothingNoInline(12))
assertEquals(12, doNothingNoInline(12))
return "OK"
}