[K/JS] Add flag for disabling signature uniqueness checks at klib generating phase
This commit is contained in:
@@ -734,6 +734,7 @@ fun serializeModuleIntoKlib(
|
||||
val compatibilityMode = CompatibilityMode(abiVersion)
|
||||
val sourceBaseDirs = configuration[CommonConfigurationKeys.KLIB_RELATIVE_PATH_BASES] ?: emptyList()
|
||||
val absolutePathNormalization = configuration[CommonConfigurationKeys.KLIB_NORMALIZE_ABSOLUTE_PATH] ?: false
|
||||
val signatureClashChecks = configuration[CommonConfigurationKeys.PRODUCE_KLIB_SIGNATURES_CLASH_CHECKS] ?: false
|
||||
|
||||
val serializedIr =
|
||||
JsIrModuleSerializer(
|
||||
@@ -743,7 +744,8 @@ fun serializeModuleIntoKlib(
|
||||
compatibilityMode,
|
||||
skipExpects = !configuration.expectActualLinker,
|
||||
normalizeAbsolutePaths = absolutePathNormalization,
|
||||
sourceBaseDirs = sourceBaseDirs
|
||||
sourceBaseDirs = sourceBaseDirs,
|
||||
signatureClashChecks
|
||||
).serializedIrModule(moduleFragment)
|
||||
|
||||
val moduleDescriptor = moduleFragment.descriptor
|
||||
|
||||
+7
-2
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.ir.backend.js.lower.serialization.ir
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.serialization.CompatibilityMode
|
||||
import org.jetbrains.kotlin.backend.common.serialization.DeclarationTable
|
||||
import org.jetbrains.kotlin.backend.common.serialization.IdSignatureClashTracker
|
||||
import org.jetbrains.kotlin.backend.common.serialization.IrModuleSerializer
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
import org.jetbrains.kotlin.ir.IrBuiltIns
|
||||
@@ -21,10 +22,14 @@ class JsIrModuleSerializer(
|
||||
compatibilityMode: CompatibilityMode,
|
||||
val skipExpects: Boolean,
|
||||
normalizeAbsolutePaths: Boolean,
|
||||
sourceBaseDirs: Collection<String>
|
||||
sourceBaseDirs: Collection<String>,
|
||||
shouldCheckSignaturesOnUniqueness: Boolean = true
|
||||
) : IrModuleSerializer<JsIrFileSerializer>(messageLogger, compatibilityMode, normalizeAbsolutePaths, sourceBaseDirs) {
|
||||
|
||||
private val globalDeclarationTable = JsGlobalDeclarationTable(irBuiltIns)
|
||||
private val globalDeclarationTable = JsGlobalDeclarationTable(
|
||||
irBuiltIns,
|
||||
if (shouldCheckSignaturesOnUniqueness) JsUniqIdClashTracker() else IdSignatureClashTracker.DEFAULT_TRACKER
|
||||
)
|
||||
|
||||
override fun createSerializerForFile(file: IrFile): JsIrFileSerializer =
|
||||
JsIrFileSerializer(
|
||||
|
||||
Reference in New Issue
Block a user