[Analysis API] Keep the collected 'FirTowerDataContext' mutable

'ContextCollector' is used for computing context of 'FirCodeFragment's.
Code fragments themselves might contain additional smart cast operations
that modify the context receiver stack.

^KT-63056 Fixed
This commit is contained in:
Yan Zhulanow
2023-11-01 19:04:59 +09:00
committed by Space Team
parent 4a7f12a8eb
commit 0944e8fc36
14 changed files with 87 additions and 27 deletions
@@ -196,6 +196,12 @@ public class FirIdeNormalAnalysisLibrarySourceModuleCompilerFacilityTestGenerate
runTest("analysis/analysis-api/testData/components/compilerFacility/compilation/codeFragments/capturing/extensionReceiverPropertyLabeled.kt");
}
@Test
@TestMetadata("extensionReceiverSmartCasted.kt")
public void testExtensionReceiverSmartCasted() throws Exception {
runTest("analysis/analysis-api/testData/components/compilerFacility/compilation/codeFragments/capturing/extensionReceiverSmartCasted.kt");
}
@Test
@TestMetadata("initializer.kt")
public void testInitializer() throws Exception {
@@ -196,6 +196,12 @@ public class FirIdeNormalAnalysisSourceModuleCompilerFacilityTestGenerated exten
runTest("analysis/analysis-api/testData/components/compilerFacility/compilation/codeFragments/capturing/extensionReceiverPropertyLabeled.kt");
}
@Test
@TestMetadata("extensionReceiverSmartCasted.kt")
public void testExtensionReceiverSmartCasted() throws Exception {
runTest("analysis/analysis-api/testData/components/compilerFacility/compilation/codeFragments/capturing/extensionReceiverSmartCasted.kt");
}
@Test
@TestMetadata("initializer.kt")
public void testInitializer() throws Exception {