diff --git a/compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.kt b/compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.kt new file mode 100644 index 00000000000..46bef27dfff --- /dev/null +++ b/compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.kt @@ -0,0 +1,13 @@ +enum class EnumClass { + E1 { + override fun foo() = 1 + override val bar: String = "a" + } + + E2 { + + } + + abstract fun foo(): Int + abstract val bar: String +} \ No newline at end of file diff --git a/compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.txt b/compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.txt new file mode 100644 index 00000000000..3946c8be578 --- /dev/null +++ b/compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.txt @@ -0,0 +1,60 @@ +package + +internal final enum class EnumClass : kotlin.Enum { + private constructor EnumClass() + internal abstract val bar: kotlin.String + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + internal abstract fun foo(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public final override /*1*/ /*fake_override*/ fun name(): kotlin.String + public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + + public enum entry E1 : EnumClass { + private constructor E1() + internal open override /*1*/ val bar: kotlin.String = "a" + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + internal open override /*1*/ fun foo(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public final override /*1*/ /*fake_override*/ fun name(): kotlin.String + public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + + public class object : EnumClass.E1 { + private constructor () + internal open override /*1*/ /*fake_override*/ val bar: kotlin.String + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + internal open override /*1*/ /*fake_override*/ fun foo(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public final override /*1*/ /*fake_override*/ fun name(): kotlin.String + public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + } + } + + public enum entry E2 : EnumClass { + private constructor E2() + internal abstract override /*1*/ /*fake_override*/ val bar: kotlin.String + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + internal abstract override /*1*/ /*fake_override*/ fun foo(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public final override /*1*/ /*fake_override*/ fun name(): kotlin.String + public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + + public class object : EnumClass.E2 { + private constructor () + internal abstract override /*1*/ /*fake_override*/ val bar: kotlin.String + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + internal abstract override /*1*/ /*fake_override*/ fun foo(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public final override /*1*/ /*fake_override*/ fun name(): kotlin.String + public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + } + } + + // Static members + public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): EnumClass + public final /*synthesized*/ fun values(): kotlin.Array +} \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java index 54d52bad9bd..66bda19e23e 100644 --- a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java @@ -3775,6 +3775,12 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest { doTest(fileName); } + @TestMetadata("enumEntryInAbstractEnum.kt") + public void testEnumEntryInAbstractEnum() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/enum/enumEntryInAbstractEnum.kt"); + doTest(fileName); + } + @TestMetadata("enumInheritance.kt") public void testEnumInheritance() throws Exception { String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/enum/enumInheritance.kt");