[FIR] take ready implicit unit type instead of return type calculation
and assert that symbol is not a substitution/intersection override in the `compute` method otherwise. Because `fakeOverrideSubstitution` should be calculated for all real implicit types, no call to this method should actually happen. Otherwise, it can be problematic to create a session which would contain the full designation path: `provider.getFirCallableContainerFile(symbol)` returns `firFile` of a super class which might be from module `a`, when declaration and its outer classes are from module `b`. ^KTIJ-24105
This commit is contained in:
+6
@@ -784,6 +784,12 @@ public class Fe10IdeNormalAnalysisSourceModuleResolveCallTestGenerated extends A
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/smartCastImplicitExtensionReceiver.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("substituteOverrideResolution.kt")
|
||||
public void testSubstituteOverrideResolution() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/substituteOverrideResolution.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("superTypeCallEntryResolveToCallInfo.kt")
|
||||
public void testSuperTypeCallEntryResolveToCallInfo() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user