From 50250ccf65e2800d3cb3ee05723dc1bd8a7c06fe Mon Sep 17 00:00:00 2001 From: Martin Petrov Date: Thu, 23 Dec 2021 17:06:38 -0500 Subject: [PATCH] [Native] Escape the module name in the C adapter. This previously failed if the module name contaned dots or dashes, e.g. ``` kotlinc-native ~/test.kt -produce static -module-name="foo-bar.baz" ``` This change espaces `-` and `.` similar to `ObjCExportNamer`'s `abbreviate`. --- .../src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt index 2fe04eb10c7..5baa8b16c6e 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt @@ -521,7 +521,7 @@ private fun ModuleDescriptor.getPackageFragments(): List { private val scopes = mutableListOf() - internal val prefix = context.config.fullExportedNamePrefix + internal val prefix = context.config.fullExportedNamePrefix.replace("-|\\.".toRegex(), "_") private lateinit var outputStreamWriter: PrintWriter private val paramNamesRecorded = mutableMapOf()