From 4b8e144c941b07b323551321f1ee58e893bed9c1 Mon Sep 17 00:00:00 2001 From: Leonid Startsev Date: Mon, 18 Feb 2019 13:52:45 +0300 Subject: [PATCH] Allow IR Lazy functions in IR serialization (#2661) Such function types are sometimes produced by serialization plugin and are sublcasses of 'IrLazyFuncitonBase' and 'IrFunction'. Interfaces for IrFunction and IrFunctionBase are identical anyway --- .../backend/konan/serialization/IrModuleSerializer.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrModuleSerializer.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrModuleSerializer.kt index c06d8ec90e0..193cbdc3cae 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrModuleSerializer.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrModuleSerializer.kt @@ -827,7 +827,7 @@ internal class IrModuleSerializer( return proto.build() } - private fun serializeIrFunctionBase(function: IrFunctionBase): KonanIr.IrFunctionBase { + private fun serializeIrFunctionBase(function: IrFunction): KonanIr.IrFunctionBase { val proto = KonanIr.IrFunctionBase.newBuilder() .setName(serializeString(function.name.toString())) .setVisibility(serializeVisibility(function.visibility)) @@ -858,7 +858,7 @@ internal class IrModuleSerializer( private fun serializeIrConstructor(declaration: IrConstructor): KonanIr.IrConstructor = KonanIr.IrConstructor.newBuilder() .setSymbol(serializeIrSymbol(declaration.symbol)) - .setBase(serializeIrFunctionBase(declaration as IrFunctionBase)) + .setBase(serializeIrFunctionBase(declaration)) .setIsPrimary(declaration.isPrimary) .build() @@ -879,7 +879,7 @@ internal class IrModuleSerializer( // proto.setCorrespondingProperty(protoUniqId(uniqId)) //} - val base = serializeIrFunctionBase(function as IrFunctionBase) + val base = serializeIrFunctionBase(function) proto.setBase(base) return proto.build()