From ea451fa7ae947a99dcc84345a205597555595dd9 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Tue, 23 Mar 2021 13:09:28 +0100 Subject: [PATCH] Revert: "FIR IDE: do not run STATUS phase under lock" --- .../kotlin/idea/fir/low/level/api/FirPhaseRunner.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/idea/idea-frontend-fir/idea-fir-low-level-api/src/org/jetbrains/kotlin/idea/fir/low/level/api/FirPhaseRunner.kt b/idea/idea-frontend-fir/idea-fir-low-level-api/src/org/jetbrains/kotlin/idea/fir/low/level/api/FirPhaseRunner.kt index e6fbcaba8fd..31d66909665 100644 --- a/idea/idea-frontend-fir/idea-fir-low-level-api/src/org/jetbrains/kotlin/idea/fir/low/level/api/FirPhaseRunner.kt +++ b/idea/idea-frontend-fir/idea-fir-low-level-api/src/org/jetbrains/kotlin/idea/fir/low/level/api/FirPhaseRunner.kt @@ -23,12 +23,16 @@ import kotlin.concurrent.withLock internal class FirPhaseRunner { private val superTypesBodyResolveLock = ReentrantLock() + private val statusResolveLock = ReentrantLock() private val implicitTypesResolveLock = ReentrantLock() fun runPhase(firFile: FirFile, phase: FirResolvePhase, scopeSession: ScopeSession) = when (phase) { FirResolvePhase.SUPER_TYPES -> superTypesBodyResolveLock.withLock { runPhaseWithoutLock(firFile, phase, scopeSession) } + FirResolvePhase.STATUS -> statusResolveLock.withLock { + runPhaseWithoutLock(firFile, phase, scopeSession) + } FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE -> implicitTypesResolveLock.withLock { runPhaseWithoutLock(firFile, phase, scopeSession) } @@ -41,6 +45,9 @@ internal class FirPhaseRunner { FirResolvePhase.SUPER_TYPES -> superTypesBodyResolveLock.withLock { runPhaseWithCustomResolveWithoutLock(resolve) } + FirResolvePhase.STATUS -> statusResolveLock.withLock { + runPhaseWithCustomResolveWithoutLock(resolve) + } FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE -> implicitTypesResolveLock.withLock { runPhaseWithCustomResolveWithoutLock(resolve) }