[LL FIR] fix lazy resolution of member-property statuses for local classes
Previously, statuses of superclass which are not local was not ignored Sometimes it worked in the IDE by calling lazyResolveToPhase which is a violation of the lazy resolution contract ^KT-54890
This commit is contained in:
+1
-1
@@ -26,7 +26,7 @@ internal class LLFirDesignatedStatusResolveTransformer(
|
||||
private val scopeSession: ScopeSession,
|
||||
) : LLFirLazyTransformer {
|
||||
private inner class FirDesignatedStatusResolveTransformerForIDE :
|
||||
FirStatusResolveTransformer(session, scopeSession, StatusComputationSession.Regular()) {
|
||||
FirStatusResolveTransformer(session, scopeSession, StatusComputationSession()) {
|
||||
|
||||
val designationTransformer = LLFirDeclarationTransformer(designation)
|
||||
|
||||
|
||||
+6
@@ -3163,6 +3163,12 @@ public class DiagnosisCompilerFirTestdataTestGenerated extends AbstractDiagnosis
|
||||
runTest("compiler/fir/analysis-tests/testData/resolve/localClasses/implicitInLocalClasses.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("overrideInLocal.kt")
|
||||
public void testOverrideInLocal() throws Exception {
|
||||
runTest("compiler/fir/analysis-tests/testData/resolve/localClasses/overrideInLocal.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("typesFromSuperClasses.kt")
|
||||
public void testTypesFromSuperClasses() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user