diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/tower/PSICallResolver.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/tower/PSICallResolver.kt index 16041a2fadc..96b73621220 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/tower/PSICallResolver.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/calls/tower/PSICallResolver.kt @@ -194,9 +194,13 @@ class PSICallResolver( 1 -> { val singleCandidate = result.single() - val reportToTrace = singleCandidate.currentStatus.resultingApplicability != ResolutionCandidateApplicability.INAPPLICABLE_WRONG_RECEIVER + val isInapplicableReceiver = singleCandidate.currentStatus.resultingApplicability == ResolutionCandidateApplicability.INAPPLICABLE_WRONG_RECEIVER - val resolvedCall = kotlinToResolvedCallTransformer.transformAndReport(singleCandidate, context, trace.takeIf { reportToTrace }) + val resolvedCall = kotlinToResolvedCallTransformer.transformAndReport(singleCandidate, context, trace.takeUnless { isInapplicableReceiver }) + + if (isInapplicableReceiver) { + tracingStrategy.unresolvedReferenceWrongReceiver(trace, listOf(resolvedCall)) + } return SingleOverloadResolutionResult(resolvedCall) } else -> {