From 20e7a77b7899afb8d6b85bc364894e10359d5c2c Mon Sep 17 00:00:00 2001 From: Ilmir Usmanov Date: Wed, 11 Nov 2020 10:12:13 +0100 Subject: [PATCH] IC mangling: Write version 1.4.30 requirement to functions with new mangling --- .../kotlin/serialization/DescriptorSerializer.kt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt b/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt index b228360c995..ea0569496e8 100644 --- a/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt +++ b/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt @@ -32,6 +32,7 @@ import org.jetbrains.kotlin.resolve.constants.EnumValue import org.jetbrains.kotlin.resolve.constants.IntValue import org.jetbrains.kotlin.resolve.constants.NullValue import org.jetbrains.kotlin.resolve.constants.StringValue +import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe import org.jetbrains.kotlin.resolve.descriptorUtil.nonSourceAnnotations import org.jetbrains.kotlin.resolve.isInlineClassType import org.jetbrains.kotlin.serialization.deserialization.ProtoEnumFlags @@ -361,7 +362,17 @@ class DescriptorSerializer private constructor( } if (descriptor.hasInlineClassTypesInSignature()) { - builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.InlineClasses)) + if (descriptor.fqNameSafe.startsWith(Name.identifier("kotlin"))) { + builder.addVersionRequirement(writeVersionRequirement(LanguageFeature.InlineClasses)) + } else { + builder.addVersionRequirement( + writeVersionRequirement( + 1, 4, 30, + ProtoBuf.VersionRequirement.VersionKind.COMPILER_VERSION, + this + ) + ) + } } }