Files
kotlin-fork/compiler/testData/codegen/box/involvesIrInterpreter/kt55108.kt
T

29 lines
941 B
Kotlin
Vendored

// TARGET_BACKEND: JVM_IR
// WITH_REFLECT
annotation class A(vararg val strings: String)
@A(*arrayOf("foo", "bar"), "baz")
class B
@A("baz", *arrayOf("foo", "bar"), "xyz")
class C
@A(*arrayOf("foo", "bar", "xyz"))
class D
@A("foo", "baz", "bar")
class E
@A(*arrayOf("foo", "bar"), *arrayOf("baz", "xyz"))
class F
fun box(): String {
assert((B::class.annotations.single() as A).strings.contentEquals(arrayOf("foo", "bar", "baz"))) { "Fail1" }
assert((C::class.annotations.single() as A).strings.contentEquals(arrayOf("baz", "foo", "bar", "xyz"))) { "Fail 2" }
assert((D::class.annotations.single() as A).strings.contentEquals(arrayOf("foo", "bar", "xyz"))) { "Fail 3" }
assert((E::class.annotations.single() as A).strings.contentEquals(arrayOf("foo", "baz", "bar"))) { "Fail 4" }
assert((F::class.annotations.single() as A).strings.contentEquals(arrayOf("foo", "bar", "baz", "xyz"))) { "Fail 5" }
return "OK"
}