diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosisCompilerTestFE10TestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosisCompilerTestFE10TestdataTestGenerated.java index 201480b6c8a..9005d36bbb3 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosisCompilerTestFE10TestdataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosisCompilerTestFE10TestdataTestGenerated.java @@ -12820,6 +12820,12 @@ public class DiagnosisCompilerTestFE10TestdataTestGenerated extends AbstractDiag runTest("compiler/testData/diagnostics/tests/imports/DefaultImportsPriority.kt"); } + @Test + @TestMetadata("DoubleImports.kt") + public void testDoubleImports() throws Exception { + runTest("compiler/testData/diagnostics/tests/imports/DoubleImports.kt"); + } + @Test @TestMetadata("ExplicitImportsAmbiguity.kt") public void testExplicitImportsAmbiguity() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java index 72a20f5b7ba..3cf78b35161 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsTestGenerated.java @@ -12820,6 +12820,12 @@ public class FirOldFrontendDiagnosticsTestGenerated extends AbstractFirDiagnosti runTest("compiler/testData/diagnostics/tests/imports/DefaultImportsPriority.kt"); } + @Test + @TestMetadata("DoubleImports.kt") + public void testDoubleImports() throws Exception { + runTest("compiler/testData/diagnostics/tests/imports/DoubleImports.kt"); + } + @Test @TestMetadata("ExplicitImportsAmbiguity.kt") public void testExplicitImportsAmbiguity() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java index 7d3a0dd4d39..009b6726269 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendDiagnosticsWithLightTreeTestGenerated.java @@ -12820,6 +12820,12 @@ public class FirOldFrontendDiagnosticsWithLightTreeTestGenerated extends Abstrac runTest("compiler/testData/diagnostics/tests/imports/DefaultImportsPriority.kt"); } + @Test + @TestMetadata("DoubleImports.kt") + public void testDoubleImports() throws Exception { + runTest("compiler/testData/diagnostics/tests/imports/DoubleImports.kt"); + } + @Test @TestMetadata("ExplicitImportsAmbiguity.kt") public void testExplicitImportsAmbiguity() throws Exception { diff --git a/compiler/testData/diagnostics/tests/imports/DoubleImports.fir.kt b/compiler/testData/diagnostics/tests/imports/DoubleImports.fir.kt new file mode 100644 index 00000000000..873d3314265 --- /dev/null +++ b/compiler/testData/diagnostics/tests/imports/DoubleImports.fir.kt @@ -0,0 +1,41 @@ +// FILE: StarImported.kt + +package star + +class SomeClass + +fun foo() {} + +val bar = 1 + +// FILE: ExplicitImported.kt + +package explicit + +class AnotherClass + +fun baz() {} + +val gau = 2 + +// FILE: Test.kt + +import star.* +import star.* +import explicit.AnotherClass +import explicit.AnotherClass +import explicit.baz +import explicit.baz +import explicit.gau +import explicit.gau + +fun useSomeClass(): SomeClass = SomeClass() + +fun useAnotherClass(): AnotherClass = AnotherClass() + +fun test() { + foo() + baz() + val x = bar + val y = gau +} diff --git a/compiler/testData/diagnostics/tests/imports/DoubleImports.kt b/compiler/testData/diagnostics/tests/imports/DoubleImports.kt new file mode 100644 index 00000000000..788e0c1f31f --- /dev/null +++ b/compiler/testData/diagnostics/tests/imports/DoubleImports.kt @@ -0,0 +1,41 @@ +// FILE: StarImported.kt + +package star + +class SomeClass + +fun foo() {} + +val bar = 1 + +// FILE: ExplicitImported.kt + +package explicit + +class AnotherClass + +fun baz() {} + +val gau = 2 + +// FILE: Test.kt + +import star.* +import star.* +import explicit.AnotherClass +import explicit.AnotherClass +import explicit.baz +import explicit.baz +import explicit.gau +import explicit.gau + +fun useSomeClass(): SomeClass = SomeClass() + +fun useAnotherClass(): AnotherClass = AnotherClass() + +fun test() { + foo() + baz() + val x = bar + val y = gau +} diff --git a/compiler/testData/diagnostics/tests/imports/DoubleImports.txt b/compiler/testData/diagnostics/tests/imports/DoubleImports.txt new file mode 100644 index 00000000000..eff3997be26 --- /dev/null +++ b/compiler/testData/diagnostics/tests/imports/DoubleImports.txt @@ -0,0 +1,29 @@ +package + +public fun test(): kotlin.Unit +public fun useAnotherClass(): explicit.AnotherClass +public fun useSomeClass(): star.SomeClass + +package explicit { + public val gau: kotlin.Int = 2 + public fun baz(): kotlin.Unit + + public final class AnotherClass { + public constructor AnotherClass() + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + } +} + +package star { + public val bar: kotlin.Int = 1 + public fun foo(): kotlin.Unit + + public final class SomeClass { + public constructor SomeClass() + public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean + public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int + public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String + } +} 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 ffb22485d27..1db5d44e7e4 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 @@ -12826,6 +12826,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/imports/DefaultImportsPriority.kt"); } + @Test + @TestMetadata("DoubleImports.kt") + public void testDoubleImports() throws Exception { + runTest("compiler/testData/diagnostics/tests/imports/DoubleImports.kt"); + } + @Test @TestMetadata("ExplicitImportsAmbiguity.kt") public void testExplicitImportsAmbiguity() throws Exception {