From 8c1772d623d02cc55305386c0e105e68bf3c50e8 Mon Sep 17 00:00:00 2001 From: Roman Artemev Date: Wed, 11 Mar 2020 13:52:13 +0300 Subject: [PATCH] [KLIB] Add regression test --- .../ir/FirBlackBoxCodegenTestGenerated.java | 5 ++ .../signatureClash.kt | 26 ++++++++++ .../codegen/BlackBoxCodegenTestGenerated.java | 5 ++ .../LightAnalysisModeTestGenerated.java | 50 ++----------------- .../ir/IrBlackBoxCodegenTestGenerated.java | 5 ++ .../IrJsCodegenBoxTestGenerated.java | 5 ++ .../semantics/JsCodegenBoxTestGenerated.java | 5 ++ 7 files changed, 56 insertions(+), 45 deletions(-) create mode 100644 compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt diff --git a/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java index 5893875ee3e..865941fac79 100644 --- a/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java @@ -13763,6 +13763,11 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt"); } + @TestMetadata("signatureClash.kt") + public void testSignatureClash() throws Exception { + runTest("compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt"); + } + @TestMetadata("transitiveClash.kt") public void testTransitiveClash() throws Exception { runTest("compiler/testData/codegen/box/ir/serializationRegressions/transitiveClash.kt"); diff --git a/compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt b/compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt new file mode 100644 index 00000000000..503a268e016 --- /dev/null +++ b/compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt @@ -0,0 +1,26 @@ +// IGNORE_BACKEND: JS +// IGNORE_BACKEND: JS_IR +// IGNORE_BACKEND: JVM_IR +// IGNORE_BACKEND: NATIVE +// IGNORE_BACKEND_FIR: JVM_IR +// MODULE: lib +// FILE: lib.kt + +open class Base { + open fun foo(p1: T): String { return "p1:$p1" } + open fun foo(p2: String): String { return "p2:$p2" } +} +class Derived : Base() + + + +// MODULE: main(lib) +// FILE: main.kt + +fun box(): String { + val d = Derived() + if (d.foo(p1 = "42") != "p1:42") return "FAIL1" + if (d.foo(p2 = "24") != "p2:24") return "FAIL2" + + return "OK" +} \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java index 11f6f95bdcd..71bb2520bd0 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java @@ -14908,6 +14908,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt"); } + @TestMetadata("signatureClash.kt") + public void testSignatureClash() throws Exception { + runTest("compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt"); + } + @TestMetadata("transitiveClash.kt") public void testTransitiveClash() throws Exception { runTest("compiler/testData/codegen/box/ir/serializationRegressions/transitiveClash.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 2e2cb19d0ab..f87cca93b3c 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -9592,21 +9592,6 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/defaultArguments/function/funInTraitChain.kt"); } - @TestMetadata("kt15971.kt") - public void ignoreKt15971() throws Exception { - runTest("compiler/testData/codegen/box/defaultArguments/function/kt15971.kt"); - } - - @TestMetadata("kt15971_2.kt") - public void ignoreKt15971_2() throws Exception { - runTest("compiler/testData/codegen/box/defaultArguments/function/kt15971_2.kt"); - } - - @TestMetadata("kt15971_3.kt") - public void ignoreKt15971_3() throws Exception { - runTest("compiler/testData/codegen/box/defaultArguments/function/kt15971_3.kt"); - } - private void runTest(String testDataFilePath) throws Exception { KotlinTestUtils.runTest(this::doTest, TargetBackend.JVM, testDataFilePath); } @@ -9695,16 +9680,6 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/defaultArguments/function/innerExtentionFunctionManyArgs.kt"); } - @TestMetadata("kt36188.kt") - public void testKt36188() throws Exception { - runTest("compiler/testData/codegen/box/defaultArguments/function/kt36188.kt"); - } - - @TestMetadata("kt36188_2.kt") - public void testKt36188_2() throws Exception { - runTest("compiler/testData/codegen/box/defaultArguments/function/kt36188_2.kt"); - } - @TestMetadata("kt5232.kt") public void testKt5232() throws Exception { runTest("compiler/testData/codegen/box/defaultArguments/function/kt5232.kt"); @@ -14913,6 +14888,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt"); } + @TestMetadata("signatureClash.kt") + public void testSignatureClash() throws Exception { + runTest("compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt"); + } + @TestMetadata("useImportedMember.kt") public void testUseImportedMember() throws Exception { runTest("compiler/testData/codegen/box/ir/serializationRegressions/useImportedMember.kt"); @@ -19416,21 +19396,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/primitiveTypes/number.kt"); } - @TestMetadata("numberEqualsHashCodeToString.kt") - public void testNumberEqualsHashCodeToString() throws Exception { - runTest("compiler/testData/codegen/box/primitiveTypes/numberEqualsHashCodeToString.kt"); - } - @TestMetadata("rangeTo.kt") public void testRangeTo() throws Exception { runTest("compiler/testData/codegen/box/primitiveTypes/rangeTo.kt"); } - @TestMetadata("stringEqualsHashCodeToString.kt") - public void testStringEqualsHashCodeToString() throws Exception { - runTest("compiler/testData/codegen/box/primitiveTypes/stringEqualsHashCodeToString.kt"); - } - @TestMetadata("substituteIntForGeneric.kt") public void testSubstituteIntForGeneric() throws Exception { runTest("compiler/testData/codegen/box/primitiveTypes/substituteIntForGeneric.kt"); @@ -21993,16 +21963,6 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/ranges/unsigned/kt35004.kt"); } - @TestMetadata("kt36953.kt") - public void testKt36953() throws Exception { - runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953.kt"); - } - - @TestMetadata("kt36953_continue.kt") - public void testKt36953_continue() throws Exception { - runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); - } - @TestMetadata("compiler/testData/codegen/box/ranges/unsigned/expression") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java index eef771d1479..528efbe21d4 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java @@ -13763,6 +13763,11 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt"); } + @TestMetadata("signatureClash.kt") + public void testSignatureClash() throws Exception { + runTest("compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt"); + } + @TestMetadata("transitiveClash.kt") public void testTransitiveClash() throws Exception { runTest("compiler/testData/codegen/box/ir/serializationRegressions/transitiveClash.kt"); diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java index 6bec1f7be8c..d1fe6475808 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java @@ -11923,6 +11923,11 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest { runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt"); } + @TestMetadata("signatureClash.kt") + public void testSignatureClash() throws Exception { + runTest("compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt"); + } + @TestMetadata("transitiveClash.kt") public void testTransitiveClash() throws Exception { runTest("compiler/testData/codegen/box/ir/serializationRegressions/transitiveClash.kt"); diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java index ad1e392ae59..4f31c8a90c3 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java @@ -11988,6 +11988,11 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest { runTest("compiler/testData/codegen/box/ir/serializationRegressions/innerClassInEnumEntryClass.kt"); } + @TestMetadata("signatureClash.kt") + public void testSignatureClash() throws Exception { + runTest("compiler/testData/codegen/box/ir/serializationRegressions/signatureClash.kt"); + } + @TestMetadata("transitiveClash.kt") public void testTransitiveClash() throws Exception { runTest("compiler/testData/codegen/box/ir/serializationRegressions/transitiveClash.kt");