[LL FIR] LLFirStatusLazyResolver: more conservative optimization for actual classes

We cannot skip resolution in the case of type actualization as we cannot
guaranty that there are no any classes in super types which can be
actualized in the current context

^KT-62832 Fixed
^KT-63547
This commit is contained in:
Dmitrii Gridin
2023-12-19 17:43:22 +01:00
committed by Space Team
parent 0dace65f05
commit 6ca6221be9
3 changed files with 29 additions and 7 deletions
@@ -25,8 +25,8 @@ import org.jetbrains.kotlin.fir.types.coneType
import org.jetbrains.kotlin.fir.types.toSymbol
import org.jetbrains.kotlin.fir.utils.exceptions.withFirEntry
import org.jetbrains.kotlin.fir.visitors.transformSingle
import org.jetbrains.kotlin.utils.exceptions.errorWithAttachment
import org.jetbrains.kotlin.util.PrivateForInline
import org.jetbrains.kotlin.utils.exceptions.errorWithAttachment
class FirStatusResolveProcessor(
session: FirSession,
@@ -155,7 +155,7 @@ open class FirDesignatedStatusResolveTransformer(
}
}
class StatusComputationSession {
open class StatusComputationSession {
private val statusMap = mutableMapOf<FirClass, StatusComputationStatus>()
.withDefault { StatusComputationStatus.NotComputed }