From 0f67da82985d6e9094780a3ce4bf8a179d75e119 Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Mon, 26 Nov 2018 11:57:31 +0300 Subject: [PATCH] Leave variable names as is during inlining --- .../konan/lower/DeepCopyIrTreeWithDescriptors.kt | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DeepCopyIrTreeWithDescriptors.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DeepCopyIrTreeWithDescriptors.kt index d19f36cb8ce..a7f2e0ee6b5 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DeepCopyIrTreeWithDescriptors.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DeepCopyIrTreeWithDescriptors.kt @@ -114,7 +114,7 @@ internal class DeepCopyIrTreeWithSymbolsForInliner(val context: Context, override fun getFileName(symbol: IrFileSymbol) = symbol.owner.fqName override fun getExternalPackageFragmentName(symbol: IrExternalPackageFragmentSymbol) = symbol.owner.fqName override fun getEnumEntryName(symbol: IrEnumEntrySymbol) = symbol.owner.name - override fun getVariableName(symbol: IrVariableSymbol) = map.getOrPut(symbol) { generateCopyName(symbol.owner.name) } + override fun getVariableName(symbol: IrVariableSymbol) = symbol.owner.name override fun getTypeParameterName(symbol: IrTypeParameterSymbol) = symbol.owner.name override fun getValueParameterName(symbol: IrValueParameterSymbol) = symbol.owner.name } @@ -464,12 +464,6 @@ internal class DeepCopyIrTreeWithDescriptors(val targetDescriptor: FunctionDescr //--- Copy descriptors ------------------------------------------------// - private fun generateCopyName(name: Name): Name { - val declarationName = name.toString() // Name of declaration - val indexStr = (nameIndex++).toString() // Unique for inline target index - return Name.identifier(declarationName + "_" + indexStr) - } - //---------------------------------------------------------------------// private fun copyVariableDescriptor(oldDescriptor: VariableDescriptor): VariableDescriptor { @@ -477,7 +471,7 @@ internal class DeepCopyIrTreeWithDescriptors(val targetDescriptor: FunctionDescr val newContainingDeclaration = descriptorSubstituteMap.getOrDefault(oldContainingDeclaration, oldContainingDeclaration) return IrTemporaryVariableDescriptorImpl( containingDeclaration = newContainingDeclaration, - name = generateCopyName(oldDescriptor.name), + name = oldDescriptor.name, outType = substituteType(oldDescriptor.type)!!, isMutable = oldDescriptor.isVar )