Files
kotlin-fork/compiler/testData/codegen/box/jvm8/defaults/allCompatibility/propertyAnnotation.kt
T
2020-05-08 17:30:19 +03:00

24 lines
507 B
Kotlin
Vendored

// !JVM_DEFAULT_MODE: all-compatibility
// TARGET_BACKEND: JVM
// JVM_TARGET: 1.8
// WITH_REFLECT
annotation class Property(val value: String)
annotation class Accessor(val value: String)
interface Z {
@Property("OK")
val z: String
@Accessor("OK")
get() = "OK"
}
class Test : Z
fun box() : String {
val value = Z::z.annotations.filterIsInstance<Property>().single().value
if (value != "OK") return value
return (Z::z.getter.annotations.single() as Accessor).value
}