JVM_IR KT-32115 fix $$delegatedProperties initialization in enum

This commit is contained in:
Dmitry Petrov
2020-12-30 12:15:12 +03:00
committed by TeamCityServer
parent 3e3ffee2a0
commit 7fa04afda2
9 changed files with 54 additions and 4 deletions
@@ -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 {