Avoid IR node duplication when lowering interop constant access
This commit is contained in:
committed by
Sergey Bogolepov
parent
eec5547213
commit
e147993ff2
+6
-2
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user