blob: f402c48fa53b229d444050a5418c0deede2b2757 [file]
// FILE: lib.kt
import kotlin.test.*
inline fun <T> buzz(x: T): T {
log("buzz($x)")
return x
}
// CHECK_NOT_CALLED: buzz
private var LOG = ""
fun log(string: String) {
LOG += "$string;"
}
fun pullLog(): String {
val string = LOG
LOG = ""
return string
}
// FILE: main.kt
import kotlin.test.*
// CHECK_NOT_CALLED: buzz
fun <T> fizz(x: T): T {
log("fizz($x)")
return x
}
fun sum(x: Int, y: Int): Int {
log("sum($x, $y)")
return x + y
}
fun box(): String {
assertEquals(3, sum(fizz(1), buzz(2)))
assertEquals("fizz(1);buzz(2);sum(1, 2);", pullLog())
return "OK"
}