diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByFqNameForLibraryTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByFqNameForLibraryTestGenerated.java index 37e4d32374d..86a014c439d 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByFqNameForLibraryTestGenerated.java +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesByFqNameForLibraryTestGenerated.java @@ -336,6 +336,12 @@ public class SymbolLightClassesByFqNameForLibraryTestGenerated extends AbstractS runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @Test + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @Test @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesEqualityByFqNameForLibraryTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesEqualityByFqNameForLibraryTestGenerated.java index 790a4d8ad29..6124dde8ad9 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesEqualityByFqNameForLibraryTestGenerated.java +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesEqualityByFqNameForLibraryTestGenerated.java @@ -336,6 +336,12 @@ public class SymbolLightClassesEqualityByFqNameForLibraryTestGenerated extends A runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @Test + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @Test @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesParentingByFqNameForLibraryTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesParentingByFqNameForLibraryTestGenerated.java index ac1441fa551..d6e7abb00e0 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesParentingByFqNameForLibraryTestGenerated.java +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/decompiled/SymbolLightClassesParentingByFqNameForLibraryTestGenerated.java @@ -336,6 +336,12 @@ public class SymbolLightClassesParentingByFqNameForLibraryTestGenerated extends runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @Test + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @Test @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByFqNameForSourceTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByFqNameForSourceTestGenerated.java index b53e6b192e4..9ac1b4f2f8d 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByFqNameForSourceTestGenerated.java +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesByFqNameForSourceTestGenerated.java @@ -336,6 +336,12 @@ public class SymbolLightClassesByFqNameForSourceTestGenerated extends AbstractSy runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @Test + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @Test @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { @@ -525,6 +531,12 @@ public class SymbolLightClassesByFqNameForSourceTestGenerated extends AbstractSy runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/typeAliasActualization2.kt"); } + @Test + @TestMetadata("UnitAsTypeAliasActualization.kt") + public void testUnitAsTypeAliasActualization() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt"); + } + @Test @TestMetadata("unresolvedQuialifierInAnnotation.kt") public void testUnresolvedQuialifierInAnnotation() { diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesEqualityByFqNameForSourceTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesEqualityByFqNameForSourceTestGenerated.java index 8e4a408e05b..d8a0861f643 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesEqualityByFqNameForSourceTestGenerated.java +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesEqualityByFqNameForSourceTestGenerated.java @@ -336,6 +336,12 @@ public class SymbolLightClassesEqualityByFqNameForSourceTestGenerated extends Ab runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @Test + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @Test @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { @@ -525,6 +531,12 @@ public class SymbolLightClassesEqualityByFqNameForSourceTestGenerated extends Ab runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/typeAliasActualization2.kt"); } + @Test + @TestMetadata("UnitAsTypeAliasActualization.kt") + public void testUnitAsTypeAliasActualization() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt"); + } + @Test @TestMetadata("unresolvedQuialifierInAnnotation.kt") public void testUnresolvedQuialifierInAnnotation() { diff --git a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesParentingByFqNameForSourceTestGenerated.java b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesParentingByFqNameForSourceTestGenerated.java index 1205b581898..d15d49d3d8c 100644 --- a/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesParentingByFqNameForSourceTestGenerated.java +++ b/analysis/symbol-light-classes/tests/org/jetbrains/kotlin/light/classes/symbol/source/SymbolLightClassesParentingByFqNameForSourceTestGenerated.java @@ -336,6 +336,12 @@ public class SymbolLightClassesParentingByFqNameForSourceTestGenerated extends A runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @Test + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @Test @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { @@ -525,6 +531,12 @@ public class SymbolLightClassesParentingByFqNameForSourceTestGenerated extends A runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/typeAliasActualization2.kt"); } + @Test + @TestMetadata("UnitAsTypeAliasActualization.kt") + public void testUnitAsTypeAliasActualization() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt"); + } + @Test @TestMetadata("unresolvedQuialifierInAnnotation.kt") public void testUnresolvedQuialifierInAnnotation() { diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.descriptors.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.descriptors.java new file mode 100644 index 00000000000..0e16f8e1a72 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.descriptors.java @@ -0,0 +1,14 @@ +public final class Usage /* mypack.Usage*/ { + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit nullableUnitTypeAlias();// nullableUnitTypeAlias() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit nullableUnitTypeAliasAsNullable();// nullableUnitTypeAliasAsNullable() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit unitTypeAliasAsNullable();// unitTypeAliasAsNullable() + + public Usage();// .ctor() + + public final void unitTypeAlias();// unitTypeAlias() +} diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.java new file mode 100644 index 00000000000..f1f95ebaae9 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.java @@ -0,0 +1,15 @@ +public final class Usage /* mypack.Usage*/ { + @org.jetbrains.annotations.NotNull() + public final kotlin.Unit unitTypeAlias();// unitTypeAlias() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit nullableUnitTypeAlias();// nullableUnitTypeAlias() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit nullableUnitTypeAliasAsNullable();// nullableUnitTypeAliasAsNullable() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit unitTypeAliasAsNullable();// unitTypeAliasAsNullable() + + public Usage();// .ctor() +} diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt new file mode 100644 index 00000000000..d9432382854 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt @@ -0,0 +1,16 @@ +// mypack.Usage +package mypack + +typealias UnitTypeAlias = Unit +typealias NullableUnitTypeAlias = Unit? + +class Usage { + fun unitTypeAlias(): UnitTypeAlias { + + } + + fun unitTypeAliasAsNullable(): UnitTypeAlias? = null + + fun nullableUnitTypeAlias(): NullableUnitTypeAlias = null + fun nullableUnitTypeAliasAsNullable(): NullableUnitTypeAlias? = null +} diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.lib.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.lib.java new file mode 100644 index 00000000000..0e16f8e1a72 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.lib.java @@ -0,0 +1,14 @@ +public final class Usage /* mypack.Usage*/ { + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit nullableUnitTypeAlias();// nullableUnitTypeAlias() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit nullableUnitTypeAliasAsNullable();// nullableUnitTypeAliasAsNullable() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit unitTypeAliasAsNullable();// unitTypeAliasAsNullable() + + public Usage();// .ctor() + + public final void unitTypeAlias();// unitTypeAlias() +} diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.descriptors.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.descriptors.java new file mode 100644 index 00000000000..61c207173d2 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.descriptors.java @@ -0,0 +1,16 @@ +public final class Usage /* mypack.Usage*/ { + @org.jetbrains.annotations.NotNull() + private final kotlin.Unit prop; + + @org.jetbrains.annotations.NotNull() + public final kotlin.Unit getProp();// getProp() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit getNullableProperty();// getNullableProperty() + + public Usage();// .ctor() + + public final void foo();// foo() + + public final void usage(@org.jetbrains.annotations.NotNull() kotlin.Unit);// usage(kotlin.Unit) +} diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.java b/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.java new file mode 100644 index 00000000000..0f63c065559 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.java @@ -0,0 +1,17 @@ +public final class Usage /* mypack.Usage*/ { + @org.jetbrains.annotations.NotNull() + private final kotlin.Unit prop; + + @org.jetbrains.annotations.NotNull() + public final kotlin.Unit foo();// foo() + + @org.jetbrains.annotations.NotNull() + public final kotlin.Unit getProp();// getProp() + + @org.jetbrains.annotations.Nullable() + public final kotlin.Unit getNullableProperty();// getNullableProperty() + + public Usage();// .ctor() + + public final void usage(@org.jetbrains.annotations.NotNull() kotlin.Unit);// usage(kotlin.Unit) +} diff --git a/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt b/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt new file mode 100644 index 00000000000..8ce3481cd6b --- /dev/null +++ b/compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt @@ -0,0 +1,26 @@ +// mypack.Usage +// SKIP_IDE_TEST +// MODULE: common +// FILE: common.kt +package mypack + +expect class MyPlatformSpecificClass + +// MODULE: main-jvm()()(common) +// FILE: usage.kt +package mypack + +actual typealias MyPlatformSpecificClass = Unit + +class Usage { + fun foo(): MyPlatformSpecificClass { + + } + + val prop: MyPlatformSpecificClass + val nullableProperty: MyPlatformSpecificClass? get() = null + + fun usage(voidParam: MyPlatformSpecificClass) { + + } +} diff --git a/compiler/tests-gen/org/jetbrains/kotlin/asJava/CompilerLightClassTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/asJava/CompilerLightClassTestGenerated.java index 128303f4a7f..6a1e3d8c284 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/asJava/CompilerLightClassTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/asJava/CompilerLightClassTestGenerated.java @@ -289,6 +289,11 @@ public class CompilerLightClassTestGenerated extends AbstractCompilerLightClassT runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/TypePararametersInClass.kt"); } + @TestMetadata("UnitAsTypeAlias.kt") + public void testUnitAsTypeAlias() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/UnitAsTypeAlias.kt"); + } + @TestMetadata("ValueClassInParametersWithJvmName.kt") public void testValueClassInParametersWithJvmName() { runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/ValueClassInParametersWithJvmName.kt"); @@ -451,6 +456,11 @@ public class CompilerLightClassTestGenerated extends AbstractCompilerLightClassT runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/typeAliasActualization2.kt"); } + @TestMetadata("UnitAsTypeAliasActualization.kt") + public void testUnitAsTypeAliasActualization() { + runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/UnitAsTypeAliasActualization.kt"); + } + @TestMetadata("unresolvedQuialifierInAnnotation.kt") public void testUnresolvedQuialifierInAnnotation() { runTest("compiler/testData/asJava/lightClasses/lightClassByFqName/compilationErrors/unresolvedQuialifierInAnnotation.kt");