From 0db02926f53dc4861329cbb9e2eeae374a3818cc Mon Sep 17 00:00:00 2001 From: Georgy Bronnikov Date: Sun, 31 May 2020 13:52:23 +0300 Subject: [PATCH] JVM_IR: remove descriptors from MethodSignatureMapper --- .../kotlin/backend/jvm/codegen/MethodSignatureMapper.kt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt index 6382c11be1a..37a770f1d72 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/MethodSignatureMapper.kt @@ -35,7 +35,6 @@ import org.jetbrains.kotlin.ir.expressions.IrFunctionAccessExpression import org.jetbrains.kotlin.ir.types.* import org.jetbrains.kotlin.ir.util.* import org.jetbrains.kotlin.load.java.* -import org.jetbrains.kotlin.load.java.descriptors.JavaClassDescriptor import org.jetbrains.kotlin.load.kotlin.* import org.jetbrains.kotlin.metadata.deserialization.getExtensionOrNull import org.jetbrains.kotlin.metadata.jvm.JvmProtoBuf @@ -180,8 +179,8 @@ class MethodSignatureMapper(private val context: JvmBackendContext) { private fun mapSignature(function: IrFunction, skipGenericSignature: Boolean, skipSpecial: Boolean = false): JvmMethodGenericSignature { if (function is IrLazyFunctionBase && function.initialSignatureFunction != null) { // Overrides of special builtin in Kotlin classes always have special signature - if (function.descriptor.getOverriddenBuiltinReflectingJvmDescriptor() == null || - function.descriptor.containingDeclaration.original is JavaClassDescriptor + if ((function as? IrSimpleFunction)?.getDifferentNameForJvmBuiltinFunction() == null || + (function.parent as? IrClass)?.origin == IrDeclarationOrigin.IR_EXTERNAL_JAVA_DECLARATION_STUB ) { return mapSignature(function.initialSignatureFunction!!, skipGenericSignature) }