From 5de8401494e94816757673169019290f367e6aa7 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Fri, 30 Apr 2021 11:04:52 +0300 Subject: [PATCH] Reset FirQualifiedNameResolver properly --- .../resolve/src/org/jetbrains/kotlin/fir/FirCallResolver.kt | 3 +-- .../src/org/jetbrains/kotlin/fir/FirQualifiedNameResolver.kt | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirCallResolver.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirCallResolver.kt index 487a8dc79f1..3043ff15c5e 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirCallResolver.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirCallResolver.kt @@ -195,9 +195,8 @@ class FirCallResolver( qualifiedResolver.tryResolveAsQualifier(qualifiedAccess.source)?.let { resolvedQualifier -> return resolvedQualifier } - } else { - qualifiedResolver.reset() } + qualifiedResolver.reset() } val referencedSymbol = when (nameReference) { diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirQualifiedNameResolver.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirQualifiedNameResolver.kt index a59121afa78..9c6c88f7b88 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirQualifiedNameResolver.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/FirQualifiedNameResolver.kt @@ -57,6 +57,9 @@ class FirQualifiedNameResolver(private val components: BodyResolveComponents) { fun replacedQualifier(qualifiedAccess: FirQualifiedAccess): FirStatement? = if (qualifierPartsToDrop > 0) { qualifierPartsToDrop-- + if (qualifierPartsToDrop == 0) { + reset() + } qualifiedAccess.explicitReceiver ?: qualifiedAccess } else { null