diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt index a2c2934b7e7..f9539c157f7 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt @@ -321,8 +321,10 @@ internal class FunctionReferenceLowering(val context: Context): FileLoweringPass addOverride("computeFqName") { irString(functionReferenceTarget.computeFullName()) } - functionReference.symbol.owner.dispatchReceiverParameter - ?.takeIf { it in boundFunctionParameters } + listOfNotNull( + functionReference.symbol.owner.dispatchReceiverParameter, + functionReference.symbol.owner.extensionReceiverParameter + ).singleOrNull { it in boundFunctionParameters } ?.let { receiver -> addOverrideInner("computeReceiver") { f -> irGetField(irGet(f.dispatchReceiverParameter!!), argumentToPropertiesMap[receiver]!!)