From 40af02ca4f5046584b9821a17f0eece04437e0e2 Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Tue, 20 Feb 2024 00:32:11 +0100 Subject: [PATCH] [Commonizer] Metadata comparator: A special path element for FlexibleTypeUpperBound ^KT-62753 --- .../metadata/utils/MetadataDeclarationsComparator.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/native/commonizer/src/org/jetbrains/kotlin/commonizer/metadata/utils/MetadataDeclarationsComparator.kt b/native/commonizer/src/org/jetbrains/kotlin/commonizer/metadata/utils/MetadataDeclarationsComparator.kt index 795023cc636..44f9ae84ef2 100644 --- a/native/commonizer/src/org/jetbrains/kotlin/commonizer/metadata/utils/MetadataDeclarationsComparator.kt +++ b/native/commonizer/src/org/jetbrains/kotlin/commonizer/metadata/utils/MetadataDeclarationsComparator.kt @@ -120,6 +120,10 @@ class MetadataDeclarationsComparator private constructor(private val config: Con override fun toString() = "TypeArgument #$index" } + class FlexibleTypeUpperBound(val upperBoundA: KmFlexibleTypeUpperBound, val upperBoundB: KmFlexibleTypeUpperBound) : PathElement { + override fun toString() = "TypeFlexibleUpperBound" + } + class EnumEntry(val entryA: KlibEnumEntry, val entryB: KlibEnumEntry) : PathElement { override fun toString() = "EnumEntry '${entryA.name}'" } @@ -175,6 +179,7 @@ class MetadataDeclarationsComparator private constructor(private val config: Con EffectExpression(entityA, entityB, optionalIndex) } entityA is KlibEnumEntry && entityB is KlibEnumEntry -> EnumEntry(entityA, entityB) + entityA is KmFlexibleTypeUpperBound && entityB is KmFlexibleTypeUpperBound -> FlexibleTypeUpperBound(entityA, entityB) else -> error("Unknown combination of entities: ${entityA::class.java}, ${entityB::class.java}") } }