Files
kotlin-fork/compiler/testData/codegen/box/fileCheck/kt49847_sam_Any.kt
T
Vladimir Sukharev e43b634122 [K/N] Migrate most simple filecheck tests to new infra
^KT-62157


Merge-request: KT-MR-12376
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-10-23 10:07:28 +00:00

24 lines
483 B
Kotlin
Vendored

// TARGET_BACKEND: NATIVE
// FILECHECK_STAGE: CStubs
fun interface Foo {
fun bar(x: Int): Any
}
fun baz(x: Any): Int = x.hashCode()
// CHECK-LABEL: define %struct.ObjHeader* @"kfun:#box(){}kotlin.String"
// Boxing needs to be used now due to non-devirtualized call
// CHECK-OPT: Int-box
// CHECK-NOT: Int-box
// CHECK-NOT: Int-unbox
// CHECK-LABEL: epilogue:
fun box(): String {
val foo: Foo = Foo(::baz)
return if (foo.bar(42) == 42)
"OK"
else "FAIL"
}