From 69cf8d4df4eaa20a6e4701126c014c0eb7d24411 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steven=20Sch=C3=A4fer?= Date: Fri, 10 May 2019 12:19:25 +0200 Subject: [PATCH] Produce source function names in CallableReferenceLowering --- .../kotlin/backend/jvm/lower/CallableReferenceLowering.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/CallableReferenceLowering.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/CallableReferenceLowering.kt index 190b683441b..fa940fb6a3a 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/CallableReferenceLowering.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/CallableReferenceLowering.kt @@ -500,6 +500,9 @@ internal class CallableReferenceLowering(val context: JvmBackendContext) : FileL } } + private val IrFunction.originalName: Name + get() = (metadata as? MetadataSource.Function)?.descriptor?.name ?: name + private fun createGetNameMethod(superFunction: IrSimpleFunction): IrSimpleFunction = buildFun { setSourceRange(irFunctionReference) @@ -517,7 +520,7 @@ internal class CallableReferenceLowering(val context: JvmBackendContext) : FileL val irBuilder = context.createIrBuilder(function.symbol, startOffset, endOffset) body = irBuilder.irBlockBody(startOffset, endOffset) { +irReturn( - IrConstImpl.string(-1, -1, context.irBuiltIns.stringType, callee.name.asString()) + IrConstImpl.string(-1, -1, context.irBuiltIns.stringType, callee.originalName.asString()) ) } }