[FIR] Do not include transitive friend dependencies in symbol provider

When flattening a dependency FirSymbolProvider, make sure transitive
dependency FirSymbolProviders are not included. This requires checking
that nested symbol provider sessions match the composite symbol provider
session when they are both source sessions.

^KT-60614 Fixed
This commit is contained in:
Brian Norman
2023-10-26 11:32:26 -05:00
committed by Space Team
parent 33ab1871c7
commit c1f6fe1e76
25 changed files with 285 additions and 132 deletions
@@ -23266,6 +23266,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/tests/multimodule"), Pattern.compile("^(.*)\\.kts?$"), Pattern.compile("^(.+)\\.(reversed|fir|ll)\\.kts?$"), true);
}
@Test
@TestMetadata("dependencyModule.kt")
public void testDependencyModule() throws Exception {
runTest("compiler/testData/diagnostics/tests/multimodule/dependencyModule.kt");
}
@Test
@TestMetadata("dependsOnModule.kt")
public void testDependsOnModule() throws Exception {
@@ -504,12 +504,6 @@ public class ClassicJvmIrTextTestGenerated extends AbstractClassicJvmIrTextTest
runTest("compiler/testData/ir/irText/declarations/kt35550.kt");
}
@Test
@TestMetadata("kt45308.kt")
public void testKt45308() throws Exception {
runTest("compiler/testData/ir/irText/declarations/kt45308.kt");
}
@Test
@TestMetadata("kt47527.kt")
public void testKt47527() throws Exception {