[FIR2IR] Remember overridden symbols if f/o contains error types
^KT-64837 Fixed
This commit is contained in:
committed by
Space Team
parent
46cd5621bd
commit
8300ad76d0
+2
-1
@@ -342,12 +342,13 @@ class FakeOverrideGenerator(
|
||||
isLocal
|
||||
).symbol as IS
|
||||
|
||||
baseSymbols[irSymbol] = baseFirSymbolsForFakeOverride
|
||||
|
||||
@OptIn(UnsafeDuringIrConstructionAPI::class)
|
||||
val owner = irSymbol.owner
|
||||
if (containsErrorTypes(owner)) {
|
||||
return
|
||||
}
|
||||
baseSymbols[irSymbol] = baseFirSymbolsForFakeOverride
|
||||
|
||||
result?.add(owner)
|
||||
}
|
||||
|
||||
+6
@@ -19831,6 +19831,12 @@ public class FirLightTreeBlackBoxCodegenTestGenerated extends AbstractFirLightTr
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
+6
@@ -19831,6 +19831,12 @@ public class FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
+6
@@ -19831,6 +19831,12 @@ public class FirPsiBlackBoxCodegenTestGenerated extends AbstractFirPsiBlackBoxCo
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
// ISSUE: KT-64837
|
||||
// MODULE: lib1
|
||||
// FILE: Some.kt
|
||||
class Some<T>
|
||||
|
||||
// MODULE: lib2(lib1)
|
||||
// FILE: lib.kt
|
||||
class Inv<T>
|
||||
|
||||
interface Base {
|
||||
val x: Inv<Some<*>>
|
||||
}
|
||||
|
||||
// MODULE: main(lib2)
|
||||
// FILE: main.kt
|
||||
interface Derived : Base
|
||||
|
||||
fun box(): String = "OK"
|
||||
+6
@@ -19831,6 +19831,12 @@ public class JvmAbiConsistencyTestBoxGenerated extends AbstractJvmAbiConsistency
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
+6
@@ -18847,6 +18847,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
|
||||
runTest("compiler/testData/codegen/box/fir/LookupTags.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
+6
@@ -19831,6 +19831,12 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
+6
@@ -19831,6 +19831,12 @@ public class IrBlackBoxCodegenWithIrInlinerTestGenerated extends AbstractIrBlack
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
|
||||
+5
@@ -16561,6 +16561,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes
|
||||
runTest("compiler/testData/codegen/box/fir/manyImplFromOneJavaInterfaceWithDelegation2.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("missingDependencyClassInTypeArguments.kt")
|
||||
public void testMissingDependencyClassInTypeArguments() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/missingDependencyClassInTypeArguments.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("Mockito.kt")
|
||||
public void testMockito() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/fir/Mockito.kt");
|
||||
|
||||
Reference in New Issue
Block a user