From 41306d25fde0b0712894f8411b427a6d1765bf03 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 4 Jun 2020 18:41:44 +0300 Subject: [PATCH] JsDeclarationTable: drop descriptors in assertion --- .../backend/js/lower/serialization/ir/JsDeclarationTable.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsDeclarationTable.kt b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsDeclarationTable.kt index 9ab1396b114..69a488afe4b 100644 --- a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsDeclarationTable.kt +++ b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/lower/serialization/ir/JsDeclarationTable.kt @@ -24,7 +24,9 @@ class JsUniqIdClashTracker : IdSignatureClashTracker { if (signature in committedIdSignatures) { val clashedDeclaration = committedIdSignatures[signature]!! - if (declaration !is IrTypeParameter && declaration.descriptor.containingDeclaration !is PropertyDescriptor) { + if (declaration !is IrTypeParameter && + (declaration.parent !is IrSimpleFunction || declaration.parent === clashedDeclaration.parent) + ) { // TODO: handle clashes properly error("IdSignature clash: $signature; Existed declaration ${clashedDeclaration.render()} clashed with new ${declaration.render()}") } else {