K1: report ENUM_DECLARING_CLASS_DEPRECATED on enum entry properly

#KT-53807 Fixed
This commit is contained in:
Mikhail Glukhikh
2022-09-09 11:31:34 +02:00
committed by Space
parent 62f67e46fd
commit 769a2ca9b1
4 changed files with 38 additions and 1 deletions
@@ -4,6 +4,12 @@
import java.util.*
enum class SomeEnum { A }
fun bar() {
SomeEnum.A.declaringClass
}
fun <E : Enum<E>> foo(values: Array<E>) {
EnumSet.noneOf(values.first().declaringClass)
EnumSet.noneOf(values.first().getDeclaringClass())
@@ -4,6 +4,12 @@
import java.util.*
enum class SomeEnum { A }
fun bar() {
SomeEnum.A.<!ENUM_DECLARING_CLASS_DEPRECATED_WARNING!>declaringClass<!>
}
fun <E : Enum<E>> foo(values: Array<E>) {
EnumSet.noneOf(values.first().<!ENUM_DECLARING_CLASS_DEPRECATED_WARNING!>declaringClass<!>)
EnumSet.noneOf(values.first().<!UNRESOLVED_REFERENCE!>getDeclaringClass<!>())
@@ -1,3 +1,25 @@
package
public fun bar(): kotlin.Unit
public fun </*0*/ E : kotlin.Enum<E>> foo(/*0*/ values: kotlin.Array<E>): kotlin.Unit
public final enum class SomeEnum : kotlin.Enum<SomeEnum> {
enum entry A
private constructor SomeEnum()
@kotlin.internal.IntrinsicConstEvaluation public final override /*1*/ /*fake_override*/ val name: kotlin.String
public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
protected final override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: SomeEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
protected/*protected and package*/ final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun finalize(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<SomeEnum!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<SomeEnum>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): SomeEnum
public final /*synthesized*/ fun values(): kotlin.Array<SomeEnum>
}