diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrDescriptorDeserializer.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrDescriptorDeserializer.kt index 44d1e6b4316..b1f7bc6b1de 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrDescriptorDeserializer.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/IrDescriptorDeserializer.kt @@ -79,7 +79,7 @@ internal class IrDescriptorDeserializer(val context: Context, context.log{"### deserialized Kotlin Type index=$index, text=$text:\t$realType"} return realType } - fun deserializeLocalDeclaration(irProto: KonanIr.KotlinDescriptor, proto: KonanLinkData.Descriptor): DeclarationDescriptor { + fun deserializeLocalDeclaration(irProto: KonanIr.KotlinDescriptor, proto: KonanIr.DeclarationDescriptor): DeclarationDescriptor { when { proto.hasFunction() -> { val functionProto = proto.function diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanIr.proto b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanIr.proto index 4cb3eb2061d..ebf80e19bb7 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanIr.proto +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanIr.proto @@ -2,6 +2,7 @@ syntax = "proto2"; package org.jetbrains.kotlin.serialization; +import "org/jetbrains/kotlin/backend/konan/serialization/descriptors.proto1"; import "org/jetbrains/kotlin/backend/konan/serialization/KonanLinkData.proto"; option java_outer_classname = "KonanIr"; option optimize_for = LITE_RUNTIME; @@ -41,9 +42,18 @@ message UniqId { required int64 index = 1; } +// Inner descriptors used for inlining. +message DeclarationDescriptor { + // These are ProtoBuf.Function, ProtoBuf.Class etc + oneof descriptor { + Function function = 1; + Class clazz = 2; + Property property = 3; + Constructor constructor = 4; + } +} message LocalDeclaration { - // This is Descriptor message from KonanLinkData - required Descriptor descriptor = 1; + required DeclarationDescriptor descriptor = 1; } message KotlinType { diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanLinkData.proto b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanLinkData.proto index a452ec23b7b..b27f769a6cb 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanLinkData.proto +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanLinkData.proto @@ -70,16 +70,6 @@ message InlineIrBody { required string encoded_ir = 11; } -// Inner descriptors used for inlining. -message Descriptor { - oneof descriptor { - Function function = 1; - Class clazz = 2; - Property property = 3; - Constructor constructor = 4; - } -} - // Konan Binary Linkdata structures. message PackageFragment { diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanSerializationUtil.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanSerializationUtil.kt index c21f6db2631..66f092f6cde 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanSerializationUtil.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/KonanSerializationUtil.kt @@ -41,6 +41,7 @@ import org.jetbrains.kotlin.resolve.DescriptorUtils import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter import org.jetbrains.kotlin.resolve.scopes.MemberScope import org.jetbrains.kotlin.serialization.KonanDescriptorSerializer +import org.jetbrains.kotlin.serialization.KonanIr import org.jetbrains.kotlin.serialization.KonanLinkData import org.jetbrains.kotlin.serialization.ProtoBuf import org.jetbrains.kotlin.serialization.deserialization.* @@ -295,9 +296,9 @@ internal class KonanSerializationUtil(val context: Context) { return property } - fun serializeLocalDeclaration(descriptor: DeclarationDescriptor): KonanLinkData.Descriptor { + fun serializeLocalDeclaration(descriptor: DeclarationDescriptor): KonanIr.DeclarationDescriptor { - val proto = KonanLinkData.Descriptor.newBuilder() + val proto = KonanIr.DeclarationDescriptor.newBuilder() context.log{"### serializeLocalDeclaration: $descriptor"}