Deprecate java.lang.Class as annotation parameter

This commit is contained in:
Denis Zharkov
2015-04-20 15:27:52 +03:00
parent fa2af69942
commit fc5236244b
17 changed files with 91 additions and 2 deletions
@@ -1,3 +1,4 @@
// !DIAGNOSTICS: -JAVA_LANG_CLASS_PARAMETER_IN_ANNOTATION
package test
annotation class AnnClass(val a: Class<*>)
@@ -0,0 +1,11 @@
package test
import kotlin.reflect.KClass
annotation class AnnClass(val a: KClass<*>)
class MyClass {
AnnClass(MyClass::class) companion object {
}
}
@@ -0,0 +1,26 @@
package
package test {
internal final annotation class AnnClass : kotlin.Annotation {
public constructor AnnClass(/*0*/ a: kotlin.reflect.KClass<*>)
internal final val a: kotlin.reflect.KClass<*>
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
internal final class MyClass {
public constructor MyClass()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
test.AnnClass(a = test.MyClass::class: kotlin.reflect.KClass<test.MyClass>) internal companion object Companion {
private constructor Companion()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
}
@@ -1,3 +1,4 @@
// !DIAGNOSTICS: -JAVA_LANG_CLASS_PARAMETER_IN_ANNOTATION
annotation class Ann(val i: IntArray)
Ann(intArrayOf(<!ANNOTATION_PARAMETER_MUST_BE_CONST!>i<!>))
@@ -1,3 +1,4 @@
// !DIAGNOSTICS: -JAVA_LANG_CLASS_PARAMETER_IN_ANNOTATION
annotation class AnnC(val c: Class<*>)
AnnC(<!ANNOTATION_PARAMETER_MUST_BE_CLASS_LITERAL!>c<!>)
@@ -1,3 +1,4 @@
// !DIAGNOSTICS: -JAVA_LANG_CLASS_PARAMETER_IN_ANNOTATION
annotation class Ann(vararg val i: Int)
Ann(<!ANNOTATION_PARAMETER_MUST_BE_CONST!>i<!>)
@@ -1,3 +1,4 @@
// !DIAGNOSTICS: -JAVA_LANG_CLASS_PARAMETER_IN_ANNOTATION
package a.b.c
kotlin.deprecated("aaa")