Test framework for inline

This commit is contained in:
Mikhael Bogdanov
2014-02-18 12:14:06 +04:00
parent 769b07fbc8
commit 4f5b20a8db
93 changed files with 2593 additions and 8 deletions
@@ -0,0 +1,23 @@
import test.*
fun sameName(s: Long): Long {
return call {
s
}
}
fun sameName(s: Int): Int {
return call {
s
}
}
fun box(): String {
val result = sameName(1.toLong())
if (result != 1.toLong()) return "fail1: ${result}"
val result2 = sameName(2)
if (result2 != 2) return "fail2: ${result2}"
return "OK"
}
@@ -0,0 +1,5 @@
package test
inline fun <R> call(f: () -> R) : R {
return {f()} ()
}