diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/LegacyDescriptorUtils.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/LegacyDescriptorUtils.kt index 7a0afc0b6ad..2eafae30019 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/LegacyDescriptorUtils.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/descriptors/LegacyDescriptorUtils.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.backend.konan.serialization.isExported import org.jetbrains.kotlin.builtins.functions.FunctionClassDescriptor import org.jetbrains.kotlin.builtins.getFunctionalClassKind import org.jetbrains.kotlin.builtins.isFunctionType +import org.jetbrains.kotlin.builtins.isSuspendFunctionType import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.descriptors.annotations.AnnotationDescriptor import org.jetbrains.kotlin.builtins.konan.KonanBuiltIns @@ -78,7 +79,7 @@ internal val FunctionDescriptor.isFunctionInvoke: Boolean val dispatchReceiver = dispatchReceiverParameter ?: return false assert(!dispatchReceiver.type.isKFunctionType) - return dispatchReceiver.type.isFunctionType && + return (dispatchReceiver.type.isFunctionType || dispatchReceiver.type.isSuspendFunctionType) && this.isOperator && this.name == OperatorNameConventions.INVOKE }