Files
kotlin-fork/js/js.translator/testData/inline/cases/inlineChain.kt
T
2015-09-08 02:06:19 +03:00

27 lines
538 B
Kotlin
Vendored

package foo
// CHECK_CONTAINS_NO_CALLS: squareMultipliedByTwo
internal inline fun inline1(a: Int): Int {
return a
}
internal inline fun inline2(a: Int): Int {
return inline1(a) + inline1(a)
}
internal inline fun inline3(a: Int): Int {
return inline1(a) * inline2(a)
}
internal fun squareMultipliedByTwo(a: Int): Int {
return inline3(a)
}
fun box(): String {
assertEquals(2, squareMultipliedByTwo(1))
assertEquals(18, squareMultipliedByTwo(3))
assertEquals(32, squareMultipliedByTwo(4))
return "OK"
}