From f085d0f660a72b5337af72f8bcae14a8680fcf85 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Wed, 11 Oct 2023 13:41:25 +0200 Subject: [PATCH] K2: add reproduction of KT-61100 and KT-59561 --- ...DiagnosticsWithLightTreeTestGenerated.java | 6 ++++ ...endMPPDiagnosticsWithPsiTestGenerated.java | 6 ++++ .../typeAliasWithArray.fir.kt | 35 +++++++++++++++++++ .../annotationMatching/typeAliasWithArray.kt | 35 +++++++++++++++++++ .../test/runners/DiagnosticTestGenerated.java | 6 ++++ 5 files changed, 88 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt create mode 100644 compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java index 2f6e51756e9..1d612ad092f 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java @@ -920,6 +920,12 @@ public class FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated extends Abst runTest("compiler/testData/diagnostics/tests/multiplatform/annotationMatching/twoActualTypealiasesToSameClass.kt"); } + @Test + @TestMetadata("typeAliasWithArray.kt") + public void testTypeAliasWithArray() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt"); + } + @Test @TestMetadata("typeParameters.kt") public void testTypeParameters() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java index 90e4fd05920..2d3a3bf697d 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java @@ -920,6 +920,12 @@ public class FirOldFrontendMPPDiagnosticsWithPsiTestGenerated extends AbstractFi runTest("compiler/testData/diagnostics/tests/multiplatform/annotationMatching/twoActualTypealiasesToSameClass.kt"); } + @Test + @TestMetadata("typeAliasWithArray.kt") + public void testTypeAliasWithArray() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt"); + } + @Test @TestMetadata("typeParameters.kt") public void testTypeParameters() throws Exception { diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt new file mode 100644 index 00000000000..677ba840c39 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt @@ -0,0 +1,35 @@ +// ISSUES: KT-61100, KT-59561 +// WITH_STDLIB +// MODULE: m1-common +// FILE: common.kt + +expect enum class Mode { + Throughput, AverageTime +} + +expect annotation class BenchmarkMode(vararg val value: Mode) + +// MODULE: m1-jvm()()(m1-common) +// FILE: jvm.kt + +actual typealias Mode = mypackage.Mode + + +actual typealias ): BenchmarkMode The following declaration is incompatible because parameter types are different: constructor(vararg value: Array): BenchmarkMode")!>BenchmarkMode = mypackage.BenchmarkMode + +// FILE: mypackage/Mode.java + +package mypackage; + +public enum Mode { + Throughput, AverageTime +} + +// FILE: mypackage/BenchmarkMode.java + +package mypackage; + +public @interface BenchmarkMode { + + Mode[] value(); +} diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt new file mode 100644 index 00000000000..ab474cc7926 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt @@ -0,0 +1,35 @@ +// ISSUES: KT-61100, KT-59561 +// WITH_STDLIB +// MODULE: m1-common +// FILE: common.kt + +expect enum class Mode { + Throughput, AverageTime +} + +expect annotation class BenchmarkMode(vararg val value: Mode) + +// MODULE: m1-jvm()()(m1-common) +// FILE: jvm.kt + +actual typealias Mode = mypackage.Mode + + +actual typealias BenchmarkMode = mypackage.BenchmarkMode + +// FILE: mypackage/Mode.java + +package mypackage; + +public enum Mode { + Throughput, AverageTime +} + +// FILE: mypackage/BenchmarkMode.java + +package mypackage; + +public @interface BenchmarkMode { + + Mode[] value(); +} diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java index a8cf549e82f..d1599d83d34 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java @@ -24095,6 +24095,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/multiplatform/annotationMatching/twoActualTypealiasesToSameClass.kt"); } + @Test + @TestMetadata("typeAliasWithArray.kt") + public void testTypeAliasWithArray() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.kt"); + } + @Test @TestMetadata("typeParameters.kt") public void testTypeParameters() throws Exception {