// FIR_IDENTICAL // !LANGUAGE: +ProhibitTypeParametersInClassLiteralsInAnnotationArguments import kotlin.reflect.KClass annotation class Ann(val k: KClass<*>) annotation class AnnArray(val kk: Array>) object AnObject class C { companion object } fun foo() = "foo" @Ann("foo"::class) fun test1() {} @Ann(String::class) fun test2() {} @Ann(AnObject::class) fun test4() {} @Ann(C::class) fun test5() {} @Ann(C.Companion::class) fun test6() {} @Ann(foo()::class) fun test7() {} @AnnArray(arrayOf(""::class, String::class, AnObject::class)) fun test8() {} inline val T.test9 get() = @AnnArray(arrayOf( T::class, Array::class, Array>>::class )) object {} inline val T.test10 get() = @AnnArray([T::class]) object {}