[JS IR BE] Fix enum entry initialization

Keep helper fields uninitialized. This way thier initialization
would not depend on field initialization order.
This commit is contained in:
Svyatoslav Kuzmich
2020-03-10 21:39:32 +03:00
parent 04f9a03796
commit f113c22450
4 changed files with 22 additions and 4 deletions
@@ -343,8 +343,7 @@ class EnumEntryInstancesLowering(val context: JsIrBackendContext) : DeclarationT
isStatic = true
}.apply {
parent = irClass
val builder = context.createIrBuilder(irClass.symbol)
initializer = builder.run { irExprBody(irImplicitCast(irNull(), type)) }
initializer = null
}
enumEntry.correspondingField = result
@@ -407,8 +406,7 @@ class EnumClassCreateInitializerLowering(val context: JsIrBackendContext) : Decl
isStatic = true
}.apply {
parent = irClass
val builder = context.createIrBuilder(irClass.symbol)
initializer = builder.run { irExprBody(irBoolean(false)) }
initializer = null
}
private fun createInitEntryInstancesFun(irClass: IrClass, entryInstancesInitializedField: IrField): IrSimpleFunction =