[IR] Use resolveFakeOverrideMaybeAbstract instead of resolveFakeOverride in hasStableParameterNames
Well, the resolved fake-override can be ABSTRACT ^KT-64045 Fixed
This commit is contained in:
+12
@@ -24484,6 +24484,18 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045.kt")
|
||||
public void testKt64045() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045_2.kt")
|
||||
public void testKt64045_2() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64166.kt")
|
||||
public void testKt64166() throws Exception {
|
||||
|
||||
+12
@@ -24484,6 +24484,18 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045.kt")
|
||||
public void testKt64045() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045_2.kt")
|
||||
public void testKt64045_2() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64166.kt")
|
||||
public void testKt64166() throws Exception {
|
||||
|
||||
+12
@@ -331,6 +331,18 @@ public class FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated extends Abst
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045.kt")
|
||||
public void testKt64045() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045_2.kt")
|
||||
public void testKt64045_2() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64166.kt")
|
||||
public void testKt64166() throws Exception {
|
||||
|
||||
+12
@@ -331,6 +331,18 @@ public class FirOldFrontendMPPDiagnosticsWithPsiTestGenerated extends AbstractFi
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045.kt")
|
||||
public void testKt64045() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045_2.kt")
|
||||
public void testKt64045_2() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64166.kt")
|
||||
public void testKt64166() throws Exception {
|
||||
|
||||
+1
-1
@@ -481,7 +481,7 @@ internal abstract class IrExpectActualMatchingContext(
|
||||
var ir = asIr()
|
||||
|
||||
if (ir.isFakeOverride && ir is IrOverridableDeclaration<*>) {
|
||||
ir.resolveFakeOverride()?.let { ir = it }
|
||||
ir.resolveFakeOverrideMaybeAbstract()?.let { ir = it }
|
||||
}
|
||||
|
||||
return when (ir.origin) {
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
// FIR_IDENTICAL
|
||||
// MODULE: m1-common
|
||||
// FILE: common.kt
|
||||
|
||||
expect interface Foo {
|
||||
fun foo(param: String)
|
||||
}
|
||||
|
||||
// MODULE: m2-jvm()()(m1-common)
|
||||
// FILE: Base.java
|
||||
public interface I {
|
||||
public void foo(String renamed) {}
|
||||
}
|
||||
|
||||
// FILE: jvm.kt
|
||||
actual interface Foo : I
|
||||
@@ -0,0 +1,18 @@
|
||||
// FIR_IDENTICAL
|
||||
// MODULE: m1-common
|
||||
// FILE: common.kt
|
||||
|
||||
expect interface Foo {
|
||||
fun foo(param: String)
|
||||
}
|
||||
|
||||
// MODULE: m2-jvm()()(m1-common)
|
||||
// FILE: Base.java
|
||||
public interface I {
|
||||
public void foo(String renamed) {}
|
||||
}
|
||||
|
||||
// FILE: jvm.kt
|
||||
actual interface Foo : I {
|
||||
actual override fun foo(param: String)
|
||||
}
|
||||
Generated
+12
@@ -24484,6 +24484,18 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt63860_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045.kt")
|
||||
public void testKt64045() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64045_2.kt")
|
||||
public void testKt64045_2() throws Exception {
|
||||
runTest("compiler/testData/diagnostics/tests/multiplatform/kt64045_2.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("kt64166.kt")
|
||||
public void testKt64166() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user