override is forbidden inside annotations
This commit is contained in:
committed by
Mikhail Glukhikh
parent
c07f0e9602
commit
7331eec817
@@ -92,7 +92,8 @@ public object ModifierCheckerCore {
|
||||
|
||||
private val possibleParentTargetMap = mapOf<JetModifierKeywordToken, Set<KotlinTarget>>(
|
||||
INNER_KEYWORD to EnumSet.of(CLASS_ONLY, INNER_CLASS, LOCAL_CLASS, ENUM_CLASS, ENUM_ENTRY),
|
||||
OVERRIDE_KEYWORD to EnumSet.of(CLASS, ENUM_ENTRY),
|
||||
OVERRIDE_KEYWORD to EnumSet.of(CLASS_ONLY, INNER_CLASS, LOCAL_CLASS, OBJECT, OBJECT_LITERAL,
|
||||
INTERFACE, ENUM_CLASS, ENUM_ENTRY),
|
||||
PROTECTED_KEYWORD to EnumSet.of(CLASS_ONLY, INNER_CLASS, LOCAL_CLASS, ENUM_CLASS, OBJECT),
|
||||
INTERNAL_KEYWORD to EnumSet.of(CLASS_ONLY, INNER_CLASS, LOCAL_CLASS, OBJECT, OBJECT_LITERAL,
|
||||
ENUM_CLASS, ENUM_ENTRY, FILE),
|
||||
|
||||
@@ -3,4 +3,10 @@ annotation class My(
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>protected<!> val y: Int,
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>internal<!> val z: Int,
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>private<!> val w: Int
|
||||
)
|
||||
)
|
||||
|
||||
open class Your {
|
||||
open val x: Int = 0
|
||||
}
|
||||
|
||||
annotation class His(<!WRONG_MODIFIER_CONTAINING_DECLARATION!>override<!> val x: Int): <!SUPERTYPES_FOR_ANNOTATION_CLASS!>Your()<!>
|
||||
@@ -1,5 +1,13 @@
|
||||
package
|
||||
|
||||
@kotlin.annotation.annotation() public final class His : Your {
|
||||
public constructor His(/*0*/ x: kotlin.Int)
|
||||
public open override /*1*/ val x: kotlin.Int
|
||||
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
|
||||
}
|
||||
|
||||
@kotlin.annotation.annotation() public final class My : kotlin.Annotation {
|
||||
public constructor My(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.Int, /*2*/ z: kotlin.Int, /*3*/ w: kotlin.Int)
|
||||
private final val w: kotlin.Int
|
||||
@@ -10,3 +18,11 @@ package
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public open class Your {
|
||||
public constructor Your()
|
||||
public open val x: kotlin.Int = 0
|
||||
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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user