diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/FirTowerResolverSession.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/FirTowerResolverSession.kt index 6771f22ffa0..c0127aa8a8d 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/FirTowerResolverSession.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/calls/FirTowerResolverSession.kt @@ -216,10 +216,16 @@ class FirTowerResolverSession internal constructor( for ((index, topLevelScope) in topLevelScopes.withIndex()) { if (explicitReceiverValue != null) { - processHideMembersLevel(explicitReceiverValue, topLevelScope, info, index, depth = null) + processHideMembersLevel( + explicitReceiverValue, topLevelScope, info, index, depth = null, + ExplicitReceiverKind.EXTENSION_RECEIVER + ) } else { for ((implicitReceiverValue, depth) in implicitReceiversUsableAsValues) { - processHideMembersLevel(implicitReceiverValue, topLevelScope, info, index, depth) + processHideMembersLevel( + implicitReceiverValue, topLevelScope, info, index, depth, + ExplicitReceiverKind.NO_EXPLICIT_RECEIVER + ) } } } @@ -230,12 +236,15 @@ class FirTowerResolverSession internal constructor( topLevelScope: FirScope, info: CallInfo, index: Int, - depth: Int? + depth: Int?, + explicitReceiverKind: ExplicitReceiverKind ) = processLevel( topLevelScope.toScopeTowerLevel( extensionReceiver = receiverValue, extensionsOnly = true ), - info, TowerGroup.TopPrioritized(index).let { if (depth != null) it.Implicit(depth) else it } + info, + TowerGroup.TopPrioritized(index).let { if (depth != null) it.Implicit(depth) else it }, + explicitReceiverKind, ) private suspend fun processLocalScopesWithNoReceiver(