blob: e08390f023c4b84eb13b264ff1baa3cad2a5c957 [file]
// WITH_STDLIB
// FILE: lib.kt
val sb = StringBuilder()
inline fun foo2(block2: () -> Int) : Int {
sb.appendLine("foo2")
return block2()
}
inline fun foo1(block1: () -> Int) : Int {
sb.appendLine("foo1")
return foo2(block1)
}
// FILE: main.kt
import kotlin.test.*
fun bar(block: () -> Int) : Int {
sb.appendLine("bar")
return foo1(block)
}
fun box(): String {
sb.appendLine(bar { 33 })
assertEquals("""
bar
foo1
foo2
33
""".trimIndent(), sb.toString())
return "OK"
}