diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/InteropLowering.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/InteropLowering.kt index 29fa257f2b4..96367d6aaeb 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/InteropLowering.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/InteropLowering.kt @@ -899,10 +899,14 @@ private class InteropTransformer(val context: Context, override val irFile: IrFi ?.takeIf { it.isConst } ?: return null - return constantProperty.backingField + val irConstant = (constantProperty.backingField ?.initializer ?.expression - ?: error("Constant property ${constantProperty.name} has no initializer!") + ?: error("Constant property ${constantProperty.name} has no initializer!")) + as IrConst<*> + + // Avoid node duplication + return irConstant.copy() } override fun visitCall(expression: IrCall): IrExpression {