diff --git a/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt b/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt index e8c33d904fe..f384d73ef5e 100644 --- a/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt +++ b/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt @@ -57,6 +57,7 @@ import org.jetbrains.kotlin.js.analyzer.JsAnalysisResult import org.jetbrains.kotlin.js.config.* import org.jetbrains.kotlin.konan.file.ZipFileSystemAccessor import org.jetbrains.kotlin.konan.file.ZipFileSystemCacheableAccessor +import org.jetbrains.kotlin.library.impl.BuiltInsPlatform import org.jetbrains.kotlin.library.metadata.KlibMetadataVersion import org.jetbrains.kotlin.metadata.deserialization.BinaryVersion import org.jetbrains.kotlin.name.FqName @@ -464,7 +465,8 @@ class K2JsIrCompiler : CLICompiler() { jsOutputName = arguments.irPerModuleOutputName, icData = icData, expectDescriptorToSymbol = expectDescriptorToSymbol, - moduleFragment = moduleFragment + moduleFragment = moduleFragment, + builtInsPlatform = if (arguments.wasm) BuiltInsPlatform.WASM else BuiltInsPlatform.JS ) { file -> metadataSerializer.serializeScope(file, sourceModule.jsFrontEndResult.bindingContext, moduleFragment.descriptor) } diff --git a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt index 43b58b44143..6011ab2f2ee 100644 --- a/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt +++ b/compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/klib.kt @@ -127,6 +127,7 @@ fun generateKLib( icData: List, expectDescriptorToSymbol: MutableMap, moduleFragment: IrModuleFragment, + builtInsPlatform: BuiltInsPlatform = BuiltInsPlatform.JS, serializeSingleFile: (KtSourceFile) -> ProtoBuf.PackageFragment ) { val files = (depsDescriptors.mainModule as MainModule.SourceFiles).files.map(::KtPsiSourceFile) @@ -149,6 +150,7 @@ fun generateKLib( depsDescriptors.jsFrontEndResult.hasErrors, abiVersion, jsOutputName, + builtInsPlatform, serializeSingleFile ) } @@ -617,6 +619,7 @@ fun serializeModuleIntoKlib( containsErrorCode: Boolean = false, abiVersion: KotlinAbiVersion, jsOutputName: String?, + builtInsPlatform: BuiltInsPlatform = BuiltInsPlatform.JS, serializeSingleFile: (KtSourceFile) -> ProtoBuf.PackageFragment ) { assert(files.size == moduleFragment.files.size) @@ -725,7 +728,7 @@ fun serializeModuleIntoKlib( perFile = perFile, output = klibPath, versions = versions, - builtInsPlatform = BuiltInsPlatform.JS + builtInsPlatform = builtInsPlatform ) } diff --git a/compiler/util-klib/src/org/jetbrains/kotlin/library/impl/KotlinLibraryWriterImpl.kt b/compiler/util-klib/src/org/jetbrains/kotlin/library/impl/KotlinLibraryWriterImpl.kt index b6d3620dba8..288d5ae353f 100644 --- a/compiler/util-klib/src/org/jetbrains/kotlin/library/impl/KotlinLibraryWriterImpl.kt +++ b/compiler/util-klib/src/org/jetbrains/kotlin/library/impl/KotlinLibraryWriterImpl.kt @@ -177,7 +177,7 @@ class KotlinLibraryOnlyIrWriter(output: String, moduleName: String, versions: Ko } enum class BuiltInsPlatform { - JVM, JS, NATIVE, COMMON; + JVM, JS, NATIVE, WASM, COMMON; companion object { fun parseFromString(name: String): BuiltInsPlatform? = values().firstOrNull { it.name == name }