diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/resolveTemporaryNames.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/resolveTemporaryNames.kt index 10610b3ea2e..9cac3c9e9ac 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/resolveTemporaryNames.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/resolveTemporaryNames.kt @@ -8,6 +8,21 @@ package org.jetbrains.kotlin.ir.backend.js.transformers.irToJs import org.jetbrains.kotlin.js.backend.ast.* fun JsNode.resolveTemporaryNames() { + object : JsVisitorWithContextImpl() { + override fun endVisit(x: JsNameRef, ctx: JsContext) { + x.name?.ident?.let { + if (it.contains('.')) { + val parts = it.split('.').map { JsName(it, false) } + var result = JsNameRef(parts[0]) + for (i in 1 until parts.size) { + result = JsNameRef(parts[i], result) + } + ctx.replaceMe(result) + } + } + } + }.accept(this) + val renamings = resolveNames() accept(object : RecursiveJsVisitor() { override fun visitElement(node: JsNode) {