From 8cdba7b9e7d67e5ff9bd0840773f4ddab0e29bca Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Sat, 17 Jun 2023 11:44:17 +0200 Subject: [PATCH] [LL FIR] KtFirVisibilityChecker: use getOrBuildFirSafe instead of resolveToFirSymbol againg It is unexpected, but getOrBuildFirSafe here now works better than resolveToFirSymbol ^KT-59266 ^KT-59453 Fixed --- .../analysis/api/fir/components/KtFirVisibilityChecker.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/components/KtFirVisibilityChecker.kt b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/components/KtFirVisibilityChecker.kt index 2cf83db9d62..ee281180f60 100644 --- a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/components/KtFirVisibilityChecker.kt +++ b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/components/KtFirVisibilityChecker.kt @@ -17,7 +17,6 @@ import org.jetbrains.kotlin.analysis.api.symbols.KtFileSymbol import org.jetbrains.kotlin.analysis.api.symbols.markers.KtSymbolWithVisibility import org.jetbrains.kotlin.analysis.low.level.api.fir.api.collectDesignation import org.jetbrains.kotlin.analysis.low.level.api.fir.api.getOrBuildFirSafe -import org.jetbrains.kotlin.analysis.low.level.api.fir.api.resolveToFirSymbol import org.jetbrains.kotlin.analysis.utils.printer.parentsOfType import org.jetbrains.kotlin.descriptors.Visibilities import org.jetbrains.kotlin.descriptors.java.JavaVisibilities @@ -116,7 +115,8 @@ internal class KtFirVisibilityChecker( private fun collectContainingDeclarations(position: PsiElement): List { val nonLocalContainer = findContainingNonLocalDeclaration(position) - val nonLocalContainerFir = nonLocalContainer?.resolveToFirSymbol(analysisSession.firResolveSession)?.fir ?: return emptyList() + val nonLocalContainerFir = nonLocalContainer?.getOrBuildFirSafe(analysisSession.firResolveSession) + ?: return emptyList() val designation = nonLocalContainerFir.collectDesignation()