diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java index f59fdbf70bb..7cc6dc8c61c 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java @@ -10030,6 +10030,11 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); } + @TestMetadata("delegatedPropertyInEnum.kt") + public void testDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("extensionDelegatesWithSameNames.kt") public void testExtensionDelegatesWithSameNames() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt"); diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/StaticInitializersLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/StaticInitializersLowering.kt index fbd1bd292d9..8b081101072 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/StaticInitializersLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/StaticInitializersLowering.kt @@ -30,10 +30,11 @@ class StaticInitializersLowering(override val context: JvmBackendContext) : Init if (staticInitializerStatements.isNotEmpty()) { staticInitializerStatements.sortBy { when ((it as? IrSetField)?.symbol?.owner?.origin) { - IrDeclarationOrigin.FIELD_FOR_ENUM_ENTRY -> 1 - IrDeclarationOrigin.FIELD_FOR_ENUM_VALUES -> 2 - IrDeclarationOrigin.FIELD_FOR_OBJECT_INSTANCE -> 3 - else -> 4 + JvmLoweredDeclarationOrigin.GENERATED_PROPERTY_REFERENCE -> 1 + IrDeclarationOrigin.FIELD_FOR_ENUM_ENTRY -> 2 + IrDeclarationOrigin.FIELD_FOR_ENUM_VALUES -> 3 + IrDeclarationOrigin.FIELD_FOR_OBJECT_INSTANCE -> 4 + else -> 5 } } irClass.addFunction { diff --git a/compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt b/compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt new file mode 100644 index 00000000000..6b5e34adeb9 --- /dev/null +++ b/compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt @@ -0,0 +1,14 @@ +// IGNORE_BACKEND: JVM +// IGNORE_LIGHT_ANALYSIS + +object D { + operator fun getValue(a: Any?, b: Any?): String = "OK" +} + +enum class A { + GOO; + val a by D + val b = a +} + +fun box() = A.GOO.b \ No newline at end of file diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java index 06d5a75b64f..83b472c9b99 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java @@ -10030,6 +10030,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); } + @TestMetadata("delegatedPropertyInEnum.kt") + public void testDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("extensionDelegatesWithSameNames.kt") public void testExtensionDelegatesWithSameNames() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt"); diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index af75f58cbae..b3315eddeb7 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -9957,6 +9957,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) public static class DelegatedProperty extends AbstractLightAnalysisModeTest { + @TestMetadata("delegatedPropertyInEnum.kt") + public void ignoreDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("genericDelegateUncheckedCast2.kt") public void ignoreGenericDelegateUncheckedCast2() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/genericDelegateUncheckedCast2.kt"); diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java index 973aed6b420..7bb97b8905a 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java @@ -10030,6 +10030,11 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); } + @TestMetadata("delegatedPropertyInEnum.kt") + public void testDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("extensionDelegatesWithSameNames.kt") public void testExtensionDelegatesWithSameNames() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java index 2edd845b43e..322ade64dc9 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java @@ -8515,6 +8515,11 @@ public class IrJsCodegenBoxES6TestGenerated extends AbstractIrJsCodegenBoxES6Tes runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); } + @TestMetadata("delegatedPropertyInEnum.kt") + public void testDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("extensionDelegatesWithSameNames.kt") public void testExtensionDelegatesWithSameNames() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java index c1f816bd5de..8655e9f2544 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java @@ -8515,6 +8515,11 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest { runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); } + @TestMetadata("delegatedPropertyInEnum.kt") + public void testDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("extensionDelegatesWithSameNames.kt") public void testExtensionDelegatesWithSameNames() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java index 70cc075d31d..c18863bd2ec 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java @@ -8515,6 +8515,11 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest { runTest("compiler/testData/codegen/box/delegatedProperty/delegateWithPrivateSet.kt"); } + @TestMetadata("delegatedPropertyInEnum.kt") + public void testDelegatedPropertyInEnum() throws Exception { + runTest("compiler/testData/codegen/box/delegatedProperty/delegatedPropertyInEnum.kt"); + } + @TestMetadata("extensionDelegatesWithSameNames.kt") public void testExtensionDelegatesWithSameNames() throws Exception { runTest("compiler/testData/codegen/box/delegatedProperty/extensionDelegatesWithSameNames.kt");