Files
kotlin-fork/compiler/testData/diagnostics/tests/collectionLiterals/argumentsOfAnnotationWithKClass.kt
T
Dmitriy Novozhilov c1575edca4 [FE 1.0] Drop ArrayLiteralsInAnnotations feature
This feature was introduced in 1.2, so now it's stable part of language
  and we can drop support of disabling it
2022-01-14 14:26:50 +03:00

31 lines
540 B
Kotlin
Vendored

// !LANGUAGE: +BareArrayClassLiteral
import kotlin.reflect.KClass
annotation class Foo(val a: Array<KClass<*>> = [])
class Gen<T>
annotation class Bar(val a: Array<KClass<*>> = [Int::class, Array<Int>::class, Gen::class])
@Foo([])
fun test1() {}
@Foo([Int::class, String::class])
fun test2() {}
@Foo([Array::class])
fun test3() {}
@Foo([<!CLASS_LITERAL_LHS_NOT_A_CLASS!>Gen<Int>::class<!>])
fun test4() {}
@Foo(<!TYPE_MISMATCH!>[""]<!>)
fun test5() {}
@Foo(<!TYPE_MISMATCH!>[Int::class, 1]<!>)
fun test6() {}
@Bar
fun test7() {}