From 020dd641de280e3de7e4b0117b3891b132d1fa1d Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Thu, 7 Jun 2018 14:10:34 +0300 Subject: [PATCH] Replaced symbols comparison with descriptors comparison --- .../backend/konan/lower/DataClassOperatorsLowering.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DataClassOperatorsLowering.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DataClassOperatorsLowering.kt index fd905319991..9d52b7ad781 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DataClassOperatorsLowering.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/DataClassOperatorsLowering.kt @@ -39,8 +39,9 @@ internal class DataClassOperatorsLowering(val context: Context): FunctionLowerin override fun visitCall(expression: IrCall): IrExpression { expression.transformChildrenVoid(this) - if (expression.symbol != irBuiltins.dataClassArrayMemberToStringSymbol - && expression.symbol != irBuiltins.dataClassArrayMemberHashCodeSymbol) + val descriptor = expression.descriptor.original + if (descriptor != irBuiltins.dataClassArrayMemberToString + && descriptor != irBuiltins.dataClassArrayMemberHashCode) return expression val argument = expression.getValueArgument(0)!! @@ -50,7 +51,7 @@ internal class DataClassOperatorsLowering(val context: Context): FunctionLowerin argumentType else (argumentType.constructor.declarationDescriptor as ClassDescriptor).defaultType - val isToString = expression.symbol == irBuiltins.dataClassArrayMemberToStringSymbol + val isToString = descriptor == irBuiltins.dataClassArrayMemberToString val newSymbol = if (isToString) context.ir.symbols.arrayContentToString[genericType]!! else