K2: reproduce KT-57954 and reorganize tests around enum entries warnings

In particular, here we add FIR_DUMP to all enum entries tests with
some deprecation diagnostics and the feature on, and remove all txt-files
This commit is contained in:
Mikhail Glukhikh
2023-05-25 11:54:48 +02:00
committed by Space Team
parent 63e65a482c
commit 70899d492d
48 changed files with 626 additions and 554 deletions
@@ -11065,6 +11065,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReference.kt");
}
@Test
@TestMetadata("conflictingPropertyEntriesAndReferenceOn.kt")
public void testConflictingPropertyEntriesAndReferenceOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReferenceOn.kt");
}
@Test
@TestMetadata("entriesPropertyAsExtensionClash.kt")
public void testEntriesPropertyAsExtensionClash() throws Exception {
@@ -11107,6 +11113,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClash.kt");
}
@Test
@TestMetadata("entriesPropertyWithJvmStaticClashOn.kt")
public void testEntriesPropertyWithJvmStaticClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClashOn.kt");
}
@Test
@TestMetadata("entriesUnsupported.kt")
public void testEntriesUnsupported() throws Exception {
@@ -11125,12 +11137,24 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClash.kt");
}
@Test
@TestMetadata("genericEntriesPropertyClashOn.kt")
public void testGenericEntriesPropertyClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClashOn.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguity.kt")
public void testJavaEnumEntriesAmbiguity() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguity.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguityOn.kt")
public void testJavaEnumEntriesAmbiguityOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguityOn.kt");
}
@Test
@TestMetadata("nameShadowingOfExternallyDefinedEntries.kt")
public void testNameShadowingOfExternallyDefinedEntries() throws Exception {
@@ -11065,6 +11065,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReference.kt");
}
@Test
@TestMetadata("conflictingPropertyEntriesAndReferenceOn.kt")
public void testConflictingPropertyEntriesAndReferenceOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReferenceOn.kt");
}
@Test
@TestMetadata("entriesPropertyAsExtensionClash.kt")
public void testEntriesPropertyAsExtensionClash() throws Exception {
@@ -11107,6 +11113,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClash.kt");
}
@Test
@TestMetadata("entriesPropertyWithJvmStaticClashOn.kt")
public void testEntriesPropertyWithJvmStaticClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClashOn.kt");
}
@Test
@TestMetadata("entriesUnsupported.kt")
public void testEntriesUnsupported() throws Exception {
@@ -11125,12 +11137,24 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClash.kt");
}
@Test
@TestMetadata("genericEntriesPropertyClashOn.kt")
public void testGenericEntriesPropertyClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClashOn.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguity.kt")
public void testJavaEnumEntriesAmbiguity() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguity.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguityOn.kt")
public void testJavaEnumEntriesAmbiguityOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguityOn.kt");
}
@Test
@TestMetadata("nameShadowingOfExternallyDefinedEntries.kt")
public void testNameShadowingOfExternallyDefinedEntries() throws Exception {
@@ -11065,6 +11065,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReference.kt");
}
@Test
@TestMetadata("conflictingPropertyEntriesAndReferenceOn.kt")
public void testConflictingPropertyEntriesAndReferenceOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReferenceOn.kt");
}
@Test
@TestMetadata("entriesPropertyAsExtensionClash.kt")
public void testEntriesPropertyAsExtensionClash() throws Exception {
@@ -11107,6 +11113,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClash.kt");
}
@Test
@TestMetadata("entriesPropertyWithJvmStaticClashOn.kt")
public void testEntriesPropertyWithJvmStaticClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClashOn.kt");
}
@Test
@TestMetadata("entriesUnsupported.kt")
public void testEntriesUnsupported() throws Exception {
@@ -11125,12 +11137,24 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClash.kt");
}
@Test
@TestMetadata("genericEntriesPropertyClashOn.kt")
public void testGenericEntriesPropertyClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClashOn.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguity.kt")
public void testJavaEnumEntriesAmbiguity() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguity.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguityOn.kt")
public void testJavaEnumEntriesAmbiguityOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguityOn.kt");
}
@Test
@TestMetadata("nameShadowingOfExternallyDefinedEntries.kt")
public void testNameShadowingOfExternallyDefinedEntries() throws Exception {
@@ -11071,6 +11071,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReference.kt");
}
@Test
@TestMetadata("conflictingPropertyEntriesAndReferenceOn.kt")
public void testConflictingPropertyEntriesAndReferenceOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReferenceOn.kt");
}
@Test
@TestMetadata("entriesPropertyAsExtensionClash.kt")
public void testEntriesPropertyAsExtensionClash() throws Exception {
@@ -11113,6 +11119,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClash.kt");
}
@Test
@TestMetadata("entriesPropertyWithJvmStaticClashOn.kt")
public void testEntriesPropertyWithJvmStaticClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClashOn.kt");
}
@Test
@TestMetadata("entriesUnsupported.kt")
public void testEntriesUnsupported() throws Exception {
@@ -11131,12 +11143,24 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClash.kt");
}
@Test
@TestMetadata("genericEntriesPropertyClashOn.kt")
public void testGenericEntriesPropertyClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClashOn.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguity.kt")
public void testJavaEnumEntriesAmbiguity() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguity.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguityOn.kt")
public void testJavaEnumEntriesAmbiguityOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguityOn.kt");
}
@Test
@TestMetadata("nameShadowingOfExternallyDefinedEntries.kt")
public void testNameShadowingOfExternallyDefinedEntries() throws Exception {
@@ -1,22 +0,0 @@
package
public fun test(): kotlin.Unit
public final enum class E : kotlin.Enum<E> {
private constructor E()
public final val entries: kotlin.Int = 0
@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: E): 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<E!>!
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<E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): E
public final /*synthesized*/ fun values(): kotlin.Array<E>
}
@@ -0,0 +1,16 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class E {
;
val entries: Int = 0
}
fun test() {
E::entries
val ref = E::entries
val refType: (E) -> Int = E::entries
val refTypeWithAnyExpectedType: Any = E::entries
}
@@ -0,0 +1,25 @@
FILE: conflictingPropertyEntriesAndReferenceOn.fir.kt
public final enum class E : R|kotlin/Enum<E>| {
private constructor(): R|E| {
super<R|kotlin/Enum<E>|>()
}
public final val entries: R|kotlin/Int| = Int(0)
public get(): R|kotlin/Int|
public final static fun values(): R|kotlin/Array<E>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|E| {
}
public final static val entries: R|kotlin/enums/EnumEntries<E>|
public get(): R|kotlin/enums/EnumEntries<E>|
}
public final fun test(): R|kotlin/Unit| {
Q|E|::R|/E.entries|
lval ref: R|kotlin/reflect/KProperty0<kotlin/enums/EnumEntries<E>>| = Q|E|::R|/E.entries|
lval refType: R|(E) -> kotlin/Int| = Q|E|::R|/E.entries|
lval refTypeWithAnyExpectedType: R|kotlin/Any| = Q|E|::R|/E.entries|
}
@@ -0,0 +1,16 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class E {
;
val entries: Int = 0
}
fun test() {
E::<!DEPRECATED_ACCESS_TO_ENUM_ENTRY_PROPERTY_AS_REFERENCE!>entries<!>
val ref = E::<!DEPRECATED_ACCESS_TO_ENUM_ENTRY_PROPERTY_AS_REFERENCE!>entries<!>
val refType: (E) -> Int = E::entries
val refTypeWithAnyExpectedType: Any = E::<!DEPRECATED_ACCESS_TO_ENUM_ENTRY_PROPERTY_AS_REFERENCE!>entries<!>
}
@@ -1,31 +0,0 @@
package
package pckg {
public val pckg.A.Companion.entries: kotlin.Int
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<pckg.A> {
private constructor A()
@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: pckg.A): 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<pckg.A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<pckg.A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.A
public final /*synthesized*/ fun values(): kotlin.Array<pckg.A>
}
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package pckg
@@ -0,0 +1,44 @@
FILE: entriesPropertyAsExtensionClashOn.fir.kt
package pckg
public final enum class A : R|kotlin/Enum<pckg/A>| {
private constructor(): R|pckg/A| {
super<R|kotlin/Enum<pckg/A>|>()
}
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|pckg/A.Companion| {
super<R|kotlin/Any|>()
}
}
public final static fun values(): R|kotlin/Array<pckg/A>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|pckg/A| {
}
public final static val entries: R|kotlin/enums/EnumEntries<pckg/A>|
public get(): R|kotlin/enums/EnumEntries<pckg/A>|
}
public final val R|pckg/A.Companion|.entries: R|kotlin/Int|
public get(): R|kotlin/Int| {
^ Int(0)
}
public final fun test(): R|kotlin/Unit| {
Q|pckg/A|.R|pckg/A.entries|
Q|pckg/A.Companion|.R|pckg/entries|
R|kotlin/with|<R|pckg/A.Companion|, R|kotlin/Int|>(Q|pckg/A|, <L> = with@fun R|pckg/A.Companion|.<anonymous>(): R|kotlin/Int| <inline=Inline, kind=EXACTLY_ONCE> {
this@R|special/anonymous|.R|pckg/entries|
^ this@R|special/anonymous|.R|pckg/entries|
}
)
R|kotlin/with|<R|pckg/A.Companion|, R|kotlin/Int|>(Q|pckg/A.Companion|, <L> = with@fun R|pckg/A.Companion|.<anonymous>(): R|kotlin/Int| <inline=Inline, kind=EXACTLY_ONCE> {
^ this@R|special/anonymous|.R|pckg/entries|
}
)
lval aCompanion: R|pckg/A.Companion| = Q|pckg/A.Companion|
R|<local>/aCompanion|.R|pckg/entries|
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package pckg
@@ -1,31 +0,0 @@
package
package pckg {
public val pckg.A.Companion.entries: kotlin.Int
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<pckg.A> {
private constructor A()
@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: pckg.A): 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<pckg.A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<pckg.A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.A
public final /*synthesized*/ fun values(): kotlin.Array<pckg.A>
}
}
@@ -1,31 +0,0 @@
package
package foo {
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<foo.A> {
private constructor A()
@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: foo.A): 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<foo.A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
public final val entries: 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<foo.A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): foo.A
public final /*synthesized*/ fun values(): kotlin.Array<foo.A>
}
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package foo
@@ -0,0 +1,35 @@
FILE: entriesPropertyImportedClashOn.fir.kt
package foo
public final enum class A : R|kotlin/Enum<foo/A>| {
private constructor(): R|foo/A| {
super<R|kotlin/Enum<foo/A>|>()
}
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|foo/A.Companion| {
super<R|kotlin/Any|>()
}
public final val entries: R|kotlin/Int| = Int(0)
public get(): R|kotlin/Int|
}
public final static fun values(): R|kotlin/Array<foo/A>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|foo/A| {
}
public final static val entries: R|kotlin/enums/EnumEntries<foo/A>|
public get(): R|kotlin/enums/EnumEntries<foo/A>|
}
public final fun test(): R|kotlin/Unit| {
Q|foo/A|.R|foo/A.entries|
R|kotlin/with|<R|foo/A.Companion|, R|kotlin/Int|>(Q|foo/A|, <L> = with@fun R|foo/A.Companion|.<anonymous>(): R|kotlin/Int| <inline=Inline, kind=EXACTLY_ONCE> {
^ this@R|special/anonymous|.R|foo/A.Companion.entries|
}
)
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package foo
@@ -1,31 +0,0 @@
package
package foo {
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<foo.A> {
private constructor A()
@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: foo.A): 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<foo.A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
public final val entries: 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<foo.A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): foo.A
public final /*synthesized*/ fun values(): kotlin.Array<foo.A>
}
}
@@ -1,29 +0,0 @@
package
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<A> {
private constructor A()
@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: A): 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<A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
public final val entries: 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): A
public final /*synthesized*/ fun values(): kotlin.Array<A>
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class A {
;
@@ -0,0 +1,42 @@
FILE: entriesPropertyInCompanionClashOn.fir.kt
public final enum class A : R|kotlin/Enum<A>| {
private constructor(): R|A| {
super<R|kotlin/Enum<A>|>()
}
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|A.Companion| {
super<R|kotlin/Any|>()
}
public final val entries: R|kotlin/Int| = Int(0)
public get(): R|kotlin/Int|
}
public final static fun values(): R|kotlin/Array<A>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|A| {
}
public final static val entries: R|kotlin/enums/EnumEntries<A>|
public get(): R|kotlin/enums/EnumEntries<A>|
}
public final fun test(): R|kotlin/Unit| {
Q|A|.R|/A.entries|
Q|A.Companion|.R|/A.Companion.entries|
R|kotlin/with<Inapplicable(INAPPLICABLE): kotlin/with>#|<R|A.Companion|, <ERROR TYPE REF: Cannot infer argument for type parameter R>>(Q|A|, <L> = with@fun R|A.Companion|.<anonymous>(): <ERROR TYPE REF: Cannot infer argument for type parameter R> <inline=Inline, kind=EXACTLY_ONCE> {
this@R|special/anonymous|.R|/A.Companion.entries|
this@R|special/anonymous|.R|/A.Companion.entries|
^ <Unresolved name: values>#()
}
)
R|kotlin/with|<R|A.Companion|, R|kotlin/Int|>(Q|A.Companion|, <L> = with@fun R|A.Companion|.<anonymous>(): R|kotlin/Int| <inline=Inline, kind=EXACTLY_ONCE> {
^ this@R|special/anonymous|.R|/A.Companion.entries|
}
)
lval aCompanion: R|A.Companion| = Q|A.Companion|
R|<local>/aCompanion|.R|/A.Companion.entries|
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class A {
;
@@ -1,29 +0,0 @@
package
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<A> {
private constructor A()
@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: A): 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<A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
public final val entries: 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): A
public final /*synthesized*/ fun values(): kotlin.Array<A>
}
@@ -1,29 +0,0 @@
package
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<A> {
private constructor A()
@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: A): 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<A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
@kotlin.jvm.JvmStatic public final val entries: 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): A
public final /*synthesized*/ fun values(): kotlin.Array<A>
}
@@ -0,0 +1,22 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class A {
;
companion object {
@JvmStatic
val entries = 0
}
}
fun test() {
A.entries
with(A) {
entries
}
A.Companion.entries
}
@@ -0,0 +1,34 @@
FILE: entriesPropertyWithJvmStaticClashOn.fir.kt
public final enum class A : R|kotlin/Enum<A>| {
private constructor(): R|A| {
super<R|kotlin/Enum<A>|>()
}
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|A.Companion| {
super<R|kotlin/Any|>()
}
@R|kotlin/jvm/JvmStatic|() public final val entries: R|kotlin/Int| = Int(0)
public get(): R|kotlin/Int|
}
public final static fun values(): R|kotlin/Array<A>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|A| {
}
public final static val entries: R|kotlin/enums/EnumEntries<A>|
public get(): R|kotlin/enums/EnumEntries<A>|
}
public final fun test(): R|kotlin/Unit| {
Q|A|.R|/A.entries|
R|kotlin/with|<R|A.Companion|, R|kotlin/Int|>(Q|A|, <L> = with@fun R|A.Companion|.<anonymous>(): R|kotlin/Int| <inline=Inline, kind=EXACTLY_ONCE> {
^ this@R|special/anonymous|.R|/A.Companion.entries|
}
)
Q|A.Companion|.R|/A.Companion.entries|
}
@@ -0,0 +1,22 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class A {
;
companion object {
@JvmStatic
val entries = 0
}
}
fun test() {
A.<!DEBUG_INFO_CALL("fqName: A.Companion.entries; typeCall: variable"), DEPRECATED_ACCESS_TO_ENUM_ENTRY_COMPANION_PROPERTY!>entries<!>
with(A) {
<!DEBUG_INFO_CALL("fqName: A.Companion.entries; typeCall: variable")!>entries<!>
}
A.Companion.<!DEBUG_INFO_CALL("fqName: A.Companion.entries; typeCall: variable")!>entries<!>
}
@@ -1,23 +0,0 @@
package
public fun main(): kotlin.Unit
public final enum class Foo : kotlin.Enum<Foo> {
enum entry BAR
private constructor Foo()
@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: Foo): 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<Foo!>!
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<Foo>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Foo
public final /*synthesized*/ fun values(): kotlin.Array<Foo>
}
@@ -1,25 +0,0 @@
package
public val e: kotlin.Int
public final enum class Ambiguous : kotlin.Enum<Ambiguous> {
enum entry first
enum entry entries
private constructor Ambiguous()
@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: Ambiguous): 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<Ambiguous!>!
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<Ambiguous>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Ambiguous
public final /*synthesized*/ fun values(): kotlin.Array<Ambiguous>
}
@@ -1,31 +0,0 @@
package
package pckg {
public val </*0*/ T> T.entries: kotlin.Int
public fun test(): kotlin.Unit
public final enum class A : kotlin.Enum<pckg.A> {
private constructor A()
@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: pckg.A): 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<pckg.A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public 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
}
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<pckg.A>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.A
public final /*synthesized*/ fun values(): kotlin.Array<pckg.A>
}
}
@@ -0,0 +1,18 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package pckg
enum class A {
;
companion object
}
val <T> T.entries: Int get() = 0
fun test() {
A.entries
A.Companion.entries
}
@@ -0,0 +1,33 @@
FILE: genericEntriesPropertyClashOn.fir.kt
package pckg
public final enum class A : R|kotlin/Enum<pckg/A>| {
private constructor(): R|pckg/A| {
super<R|kotlin/Enum<pckg/A>|>()
}
public final companion object Companion : R|kotlin/Any| {
private constructor(): R|pckg/A.Companion| {
super<R|kotlin/Any|>()
}
}
public final static fun values(): R|kotlin/Array<pckg/A>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|pckg/A| {
}
public final static val entries: R|kotlin/enums/EnumEntries<pckg/A>|
public get(): R|kotlin/enums/EnumEntries<pckg/A>|
}
public final val <T> R|T|.entries: R|kotlin/Int|
public get(): R|kotlin/Int| {
^ Int(0)
}
public final fun test(): R|kotlin/Unit| {
Q|pckg/A|.R|pckg/A.entries|
Q|pckg/A.Companion|.R|pckg/entries|<R|pckg/A.Companion|>
}
@@ -0,0 +1,18 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package pckg
enum class A {
;
companion object
}
val <T> T.entries: Int get() = 0
fun test() {
A.<!DEBUG_INFO_CALL("fqName: pckg.entries; typeCall: variable"), DEPRECATED_ACCESS_TO_ENUM_ENTRY_COMPANION_PROPERTY!>entries<!>
A.Companion.<!DEBUG_INFO_CALL("fqName: pckg.entries; typeCall: variable")!>entries<!>
}
@@ -1,62 +0,0 @@
package
public fun test(): kotlin.Unit
public final enum class JEnumEntry : kotlin.Enum<JEnumEntry!> {
enum entry entries
public constructor JEnumEntry()
@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: JEnumEntry!): 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<JEnumEntry!>!
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<JEnumEntry>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): JEnumEntry
public final /*synthesized*/ fun values(): kotlin.Array<JEnumEntry>
}
public final enum class JEnumField : kotlin.Enum<JEnumField!> {
public constructor JEnumField()
public final val entries: kotlin.Int = 0
@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: JEnumField!): 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<JEnumField!>!
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<JEnumField>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): JEnumField
public final /*synthesized*/ fun values(): kotlin.Array<JEnumField>
}
public final enum class JEnumStaticField : kotlin.Enum<JEnumStaticField!> {
public constructor JEnumStaticField()
@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: JEnumStaticField!): 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<JEnumStaticField!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public const final val entries: kotlin.Int = 0
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<JEnumStaticField>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): JEnumStaticField
public final /*synthesized*/ fun values(): kotlin.Array<JEnumStaticField>
}
@@ -0,0 +1,34 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
// FILE: JEnumEntry.java
public enum JEnumEntry {
entries;
}
// FILE: JEnumStaticField.java
public enum JEnumStaticField {
;
public static final int entries = 0;
}
// FILE: JEnumField.java
public enum JEnumField {
;
public final int entries = 0;
}
// FILE: test.kt
fun test() {
JEnumEntry.entries
JEnumStaticField.entries
JEnumField::entries
}
@@ -0,0 +1,6 @@
FILE: test.kt
public final fun test(): R|kotlin/Unit| {
Q|JEnumEntry|.R|/JEnumEntry.entries|
Q|JEnumStaticField|.R|/JEnumStaticField.entries|
Q|JEnumField|::R|/JEnumField.entries|
}
@@ -0,0 +1,34 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
// FILE: JEnumEntry.java
public enum JEnumEntry {
entries;
}
// FILE: JEnumStaticField.java
public enum JEnumStaticField {
;
public static final int entries = 0;
}
// FILE: JEnumField.java
public enum JEnumField {
;
public final int entries = 0;
}
// FILE: test.kt
fun test() {
JEnumEntry.entries
JEnumStaticField.entries
JEnumField::<!DEPRECATED_ACCESS_TO_ENUM_ENTRY_PROPERTY_AS_REFERENCE!>entries<!>
}
@@ -1,66 +0,0 @@
package
package pckg {
public val entries: kotlin.String = "E"
public final class A {
public constructor A()
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
public final enum class E : kotlin.Enum<pckg.A.E> {
private constructor E()
@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: pckg.A.E): 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<pckg.A.E!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final class B {
public constructor B()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun foo(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public final class C {
public constructor C()
public final val entries: kotlin.Int = 0
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun foo(): kotlin.Unit
public open 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<pckg.A.E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.A.E
public final /*synthesized*/ fun values(): kotlin.Array<pckg.A.E>
}
}
public final enum class E : kotlin.Enum<pckg.E> {
private constructor E()
@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: pckg.E): 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 fun foo(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<pckg.E!>!
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<pckg.E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.E
public final /*synthesized*/ fun values(): kotlin.Array<pckg.E>
}
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package pckg
@@ -0,0 +1,74 @@
FILE: nameShadowingOfExternallyDefinedEntriesOn.fir.kt
package pckg
public final val entries: R|kotlin/String| = String(E)
public get(): R|kotlin/String|
public final enum class E : R|kotlin/Enum<pckg/E>| {
private constructor(): R|pckg/E| {
super<R|kotlin/Enum<pckg/E>|>()
}
public final fun foo(): R|kotlin/Unit| {
R|pckg/E.entries|.<Unresolved name: length>#
Q|pckg|.R|pckg/entries|.R|kotlin/String.length|
}
public final static fun values(): R|kotlin/Array<pckg/E>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|pckg/E| {
}
public final static val entries: R|kotlin/enums/EnumEntries<pckg/E>|
public get(): R|kotlin/enums/EnumEntries<pckg/E>|
}
public final class A : R|kotlin/Any| {
public constructor(): R|pckg/A| {
super<R|kotlin/Any|>()
}
public final enum class E : R|kotlin/Enum<pckg/A.E>| {
private constructor(): R|pckg/A.E| {
super<R|kotlin/Enum<pckg/A.E>|>()
}
public final class B : R|kotlin/Any| {
public constructor(): R|pckg/A.E.B| {
super<R|kotlin/Any|>()
}
public final fun foo(): R|kotlin/Unit| {
R|pckg/A.E.entries|.<Unresolved name: length>#
Q|pckg|.R|pckg/entries|.R|kotlin/String.length|
}
}
public final class C : R|kotlin/Any| {
public constructor(): R|pckg/A.E.C| {
super<R|kotlin/Any|>()
}
public final val entries: R|kotlin/Int| = Int(0)
public get(): R|kotlin/Int|
public final fun foo(): R|kotlin/Unit| {
this@R|pckg/A.E.C|.R|pckg/A.E.C.entries|.R|kotlin/Int.plus|(Int(4))
this@R|pckg/A.E.C|.R|pckg/A.E.C.entries|.R|kotlin/Int.plus|(Int(4))
}
}
public final static fun values(): R|kotlin/Array<pckg/A.E>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|pckg/A.E| {
}
public final static val entries: R|kotlin/enums/EnumEntries<pckg/A.E>|
public get(): R|kotlin/enums/EnumEntries<pckg/A.E>|
}
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
package pckg
@@ -1,66 +0,0 @@
package
package pckg {
public val entries: kotlin.String = "E"
public final class A {
public constructor A()
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
public final enum class E : kotlin.Enum<pckg.A.E> {
private constructor E()
@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: pckg.A.E): 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<pckg.A.E!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public final class B {
public constructor B()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun foo(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public final class C {
public constructor C()
public final val entries: kotlin.Int = 0
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun foo(): kotlin.Unit
public open 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<pckg.A.E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.A.E
public final /*synthesized*/ fun values(): kotlin.Array<pckg.A.E>
}
}
public final enum class E : kotlin.Enum<pckg.E> {
private constructor E()
@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: pckg.E): 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 fun foo(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<pckg.E!>!
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<pckg.E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): pckg.E
public final /*synthesized*/ fun values(): kotlin.Array<pckg.E>
}
}
@@ -1,24 +0,0 @@
package
public final enum class E : kotlin.Enum<E> {
enum entry entries
enum entry Entries
private constructor E()
@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: E): 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 fun foo(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<E!>!
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<E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): E
public final /*synthesized*/ fun values(): kotlin.Array<E>
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class E {
entries, Entries;
@@ -0,0 +1,23 @@
FILE: redeclarationOfEnumEntriesNameWithIntrinsicOn.fir.kt
public final enum class E : R|kotlin/Enum<E>| {
private constructor(): R|E| {
super<R|kotlin/Enum<E>|>()
}
public final static enum entry entries: R|E|
public final static enum entry Entries: R|E|
public final fun foo(): R|kotlin/Unit| {
R|/E.entries|.R|SubstitutionOverride</E.ordinal: R|kotlin/Int|>|
Q|E|.R|/E.entries|.R|SubstitutionOverride</E.ordinal: R|kotlin/Int|>|
}
public final static fun values(): R|kotlin/Array<E>| {
}
public final static fun valueOf(value: R|kotlin/String|): R|E| {
}
public final static val entries: R|kotlin/enums/EnumEntries<E>|
public get(): R|kotlin/enums/EnumEntries<E>|
}
@@ -1,5 +1,6 @@
// !LANGUAGE: +EnumEntries
// WITH_STDLIB
// FIR_DUMP
enum class E {
<!DEPRECATED_DECLARATION_OF_ENUM_ENTRY!>entries,<!> Entries;
@@ -1,24 +0,0 @@
package
public final enum class E : kotlin.Enum<E> {
enum entry entries
enum entry Entries
private constructor E()
@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: E): 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 fun foo(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<E!>!
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<E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): E
public final /*synthesized*/ fun values(): kotlin.Array<E>
}
@@ -11071,6 +11071,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReference.kt");
}
@Test
@TestMetadata("conflictingPropertyEntriesAndReferenceOn.kt")
public void testConflictingPropertyEntriesAndReferenceOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/conflictingPropertyEntriesAndReferenceOn.kt");
}
@Test
@TestMetadata("entriesPropertyAsExtensionClash.kt")
public void testEntriesPropertyAsExtensionClash() throws Exception {
@@ -11113,6 +11119,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClash.kt");
}
@Test
@TestMetadata("entriesPropertyWithJvmStaticClashOn.kt")
public void testEntriesPropertyWithJvmStaticClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/entriesPropertyWithJvmStaticClashOn.kt");
}
@Test
@TestMetadata("entriesUnsupported.kt")
public void testEntriesUnsupported() throws Exception {
@@ -11131,12 +11143,24 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClash.kt");
}
@Test
@TestMetadata("genericEntriesPropertyClashOn.kt")
public void testGenericEntriesPropertyClashOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/genericEntriesPropertyClashOn.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguity.kt")
public void testJavaEnumEntriesAmbiguity() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguity.kt");
}
@Test
@TestMetadata("javaEnumEntriesAmbiguityOn.kt")
public void testJavaEnumEntriesAmbiguityOn() throws Exception {
runTest("compiler/testData/diagnostics/tests/enum/entries/javaEnumEntriesAmbiguityOn.kt");
}
@Test
@TestMetadata("nameShadowingOfExternallyDefinedEntries.kt")
public void testNameShadowingOfExternallyDefinedEntries() throws Exception {