diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/Context.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/Context.kt index cb57f181512..6051c8fbbdd 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/Context.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/Context.kt @@ -71,6 +71,7 @@ internal class SpecialDescriptorsFactory(val context: Context) { bridgeDescriptor.initialize( extensionReceiverType, + // TODO: bug in descriptor - https://youtrack.jetbrains.com/issue/KT-16438. (descriptor.containingDeclaration as ClassDescriptor).thisAsReceiverParameter, descriptor.typeParameters, descriptor.valueParameters.mapIndexed { index, valueParameterDescriptor -> diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/DescriptorUtils.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/DescriptorUtils.kt index c40e23e30a1..7929c7649a5 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/DescriptorUtils.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/DescriptorUtils.kt @@ -240,13 +240,15 @@ internal class BridgeDirections(val array: Array) { fun allNotNeeded(): Boolean = array.all { it == BridgeDirection.NOT_NEEDED } override fun toString(): String { - return String(array.map { - when (it) { + val result = StringBuilder() + array.forEach { + result.append(when (it) { BridgeDirection.FROM_VALUE_TYPE -> 'U' // unbox BridgeDirection.TO_VALUE_TYPE -> 'B' // box BridgeDirection.NOT_NEEDED -> 'N' // none - } - }.toCharArray()) + }) + } + return result.toString() } override fun equals(other: Any?): Boolean {