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 test1(s: Long): Boolean {
return doSmth(s)
}
fun test2(s: Int): Boolean {
return doSmth(s)
}
inline fun <T> test3(s: T): Boolean {
return doSmth(s)
}
fun box(): String {
if (!test1(11111.toLong())) return "fail 1"
if (!test2(11111)) return "fail 2"
if (!test3(11111)) return "fail 3.1"
if (!test3("11111")) return "fail 3.2"
if (!test3(11111.3)) return "fail 3.3"
return "OK"
}
@@ -0,0 +1,5 @@
package test
inline fun <T> doSmth(a: T) : Boolean {
return a.identityEquals(a)
}