diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java index 70b4ea0f0a2..243bab96ebd 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java @@ -20948,6 +20948,24 @@ public class LLFirBlackBoxCodegenBasedTestGenerated extends AbstractLLFirBlackBo runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java index 72b02ce04b6..d30ae1018cb 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java @@ -20948,6 +20948,24 @@ public class LLFirReversedBlackBoxCodegenBasedTestGenerated extends AbstractLLFi runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java index 1be2aaa2173..e975e87dde3 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java @@ -20877,6 +20877,24 @@ public class FirLightTreeBlackBoxCodegenTestGenerated extends AbstractFirLightTr runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java index d9dac3a302b..a8e44af3b2d 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGenerated.java @@ -20877,6 +20877,24 @@ public class FirLightTreeBlackBoxCodegenWithFir2IrFakeOverrideGeneratorTestGener runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java index e9ec914d908..a349257320a 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java @@ -20877,6 +20877,24 @@ public class FirPsiBlackBoxCodegenTestGenerated extends AbstractFirPsiBlackBoxCo runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/testData/codegen/box/fakeOverride/kt40180.kt b/compiler/testData/codegen/box/fakeOverride/kt40180.kt new file mode 100644 index 00000000000..f6f2747c3cc --- /dev/null +++ b/compiler/testData/codegen/box/fakeOverride/kt40180.kt @@ -0,0 +1,18 @@ +// TARGET_BACKEND: JVM +// TARGET_BACKEND: JVM_IR + +// FILE: Base.java +public class Base { + // Parameter considered as nullable by FO builder + public void foo(String s) {} +} +// FILE: Derived.kt +class Derived : Base() { + // Parameter is not null + override fun foo(s: String) {} +} + +fun box(): String { + Derived().foo("") + return "OK" +} diff --git a/compiler/testData/codegen/box/fakeOverride/kt40180_2.kt b/compiler/testData/codegen/box/fakeOverride/kt40180_2.kt new file mode 100644 index 00000000000..5b7f1bdaf42 --- /dev/null +++ b/compiler/testData/codegen/box/fakeOverride/kt40180_2.kt @@ -0,0 +1,23 @@ +// TARGET_BACKEND: JVM +// TARGET_BACKEND: JVM_IR +// JVM_TARGET: 1.8 + +// FILE: Test.java +public interface Test { + default T test(T p) { + return null; + } +} + +// FILE: kotlin.kt +interface Test2: Test { + override fun test(p: String): String { + return p + } + + fun forDefaultImpls() {} +} + +class TestClass : Test2 + +fun box() = TestClass().test("OK") diff --git a/compiler/testData/codegen/box/fakeOverride/kt40180_3.kt b/compiler/testData/codegen/box/fakeOverride/kt40180_3.kt new file mode 100644 index 00000000000..8632a0c86bb --- /dev/null +++ b/compiler/testData/codegen/box/fakeOverride/kt40180_3.kt @@ -0,0 +1,63 @@ +// TARGET_BACKEND: JVM +// TARGET_BACKEND: JVM_IR + +// FILE: B.java +public abstract class B extends A implements L { + public String callIndexAdd(int x) { + add(0, null); + return null; + } +} + +// FILE: main.kt +open class A : Collection { + override val size: Int + get() = TODO("Not yet implemented") + + override fun contains(element: T): Boolean { + TODO("Not yet implemented") + } + + override fun containsAll(elements: Collection): Boolean { + TODO("Not yet implemented") + } + + override fun isEmpty(): Boolean { + TODO("Not yet implemented") + } + + override fun iterator(): Iterator { + TODO("Not yet implemented") + } +} + +interface L : List + +// 'add(Int; Object)' method must be present in C though it has supeclass that is subclass of List +class C : B() { + override fun get(index: Int): F { + TODO("Not yet implemented") + } + + override fun indexOf(element: F): Int { + TODO("Not yet implemented") + } + + override fun lastIndexOf(element: F): Int { + TODO("Not yet implemented") + } + + override fun listIterator(): ListIterator { + TODO("Not yet implemented") + } + + override fun listIterator(index: Int): ListIterator { + TODO("Not yet implemented") + } + + override fun subList(fromIndex: Int, toIndex: Int): List { + TODO("Not yet implemented") + } +} + +fun box() = "OK" diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java index 8357780a963..489e0980ec4 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java @@ -20877,6 +20877,24 @@ public class JvmAbiConsistencyTestBoxGenerated extends AbstractJvmAbiConsistency runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java index 9d518b5ff73..5124a8ad583 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java @@ -19995,6 +19995,24 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/fakeOverride/javaInheritsKotlinIntersectionOverride.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index 4b234312150..4b10a3b954c 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -20877,6 +20877,24 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java index dcc2377f3db..44ab1419134 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java @@ -20877,6 +20877,24 @@ public class IrBlackBoxCodegenWithIrInlinerTestGenerated extends AbstractIrBlack runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java index d0bb85a79ca..ada391ed73e 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java @@ -20877,6 +20877,24 @@ public class FirBlackBoxCodegenTestWithInlineScopesGenerated extends AbstractFir runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @Test + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @Test + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @Test + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @Test @TestMetadata("kt49371.kt") public void testKt49371() { diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 4d73f7bfa17..26228de365b 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -17422,6 +17422,21 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/fakeOverride/kjkWithPackagePrivate.kt"); } + @TestMetadata("kt40180.kt") + public void testKt40180() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180.kt"); + } + + @TestMetadata("kt40180_2.kt") + public void testKt40180_2() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_2.kt"); + } + + @TestMetadata("kt40180_3.kt") + public void testKt40180_3() { + runTest("compiler/testData/codegen/box/fakeOverride/kt40180_3.kt"); + } + @TestMetadata("kt49371.kt") public void testKt49371() { runTest("compiler/testData/codegen/box/fakeOverride/kt49371.kt");