diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt index e6ae855fcb3..becc245d30e 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/EnumClassLowering.kt @@ -535,11 +535,11 @@ private class EnumClassLowering(val context: JvmBackendContext) : ClassLoweringP private fun createEnumValuesBody(valuesField: IrField): IrBody { val cloneFun = context.irBuiltIns.arrayClass.owner.functions.find { it.name.asString() == "clone" }!! - + val returnType = valuesFunction.symbol.owner.returnType val irCloneValues = - IrCallImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, cloneFun.returnType, cloneFun.symbol, cloneFun.descriptor, 0).apply { + IrCallImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, returnType, cloneFun.symbol, cloneFun.descriptor, 0).apply { dispatchReceiver = - IrGetFieldImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, valuesField.symbol, valuesField.symbol.owner.type) + IrGetFieldImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, valuesField.symbol, valuesField.symbol.owner.type) } return IrBlockBodyImpl( @@ -548,7 +548,7 @@ private class EnumClassLowering(val context: JvmBackendContext) : ClassLoweringP IrReturnImpl( UNDEFINED_OFFSET, UNDEFINED_OFFSET, - valuesFunction.symbol.owner.returnType, + returnType, valuesFunction.symbol, irCloneValues )