diff --git a/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyFe10TestGenerated.java b/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyFe10TestGenerated.java index ea455cc32fd..2997e45588c 100644 --- a/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyFe10TestGenerated.java +++ b/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyFe10TestGenerated.java @@ -240,6 +240,12 @@ public class DecompiledKnmStubConsistencyFe10TestGenerated extends AbstractDecom runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/"); } + @Test + @TestMetadata("SealedInterface") + public void testSealedInterface() throws Exception { + runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/"); + } + @Test @TestMetadata("SecondaryConstructors") public void testSecondaryConstructors() throws Exception { diff --git a/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyK2TestGenerated.java b/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyK2TestGenerated.java index 0b980d2e8d5..5708de6a834 100644 --- a/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyK2TestGenerated.java +++ b/analysis/decompiled/decompiler-native/tests/org/jetbrains/kotlin/analysis/decompiler/konan/DecompiledKnmStubConsistencyK2TestGenerated.java @@ -240,6 +240,12 @@ public class DecompiledKnmStubConsistencyK2TestGenerated extends AbstractDecompi runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/"); } + @Test + @TestMetadata("SealedInterface") + public void testSealedInterface() throws Exception { + runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/"); + } + @Test @TestMetadata("SecondaryConstructors") public void testSecondaryConstructors() throws Exception { diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/SealedInterface.kt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/SealedInterface.kt new file mode 100644 index 00000000000..eb21d69d4d2 --- /dev/null +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/SealedInterface.kt @@ -0,0 +1,7 @@ +// FIR_IDENTICAL +package test + +sealed interface SealedInterface { + class Nested : SealedInterface + object Top : SealedInterface +} diff --git a/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/SealedInterface.txt b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/SealedInterface.txt new file mode 100644 index 00000000000..54d3de7b2c6 --- /dev/null +++ b/analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/SealedInterface.txt @@ -0,0 +1,30 @@ +PsiJetFileStubImpl[package=test] + PACKAGE_DIRECTIVE + REFERENCE_EXPRESSION[referencedName=test] + IMPORT_LIST + CLASS[classId=test/SealedInterface, fqName=test.SealedInterface, isEnumEntry=false, isInterface=true, isLocal=false, isTopLevel=true, name=SealedInterface, superNames=[]] + MODIFIER_LIST[public] + CLASS_BODY + CLASS[classId=test/SealedInterface.Nested, fqName=test.SealedInterface.Nested, isEnumEntry=false, isInterface=false, isLocal=false, isTopLevel=false, name=Nested, superNames=[SealedInterface]] + MODIFIER_LIST[public final] + PRIMARY_CONSTRUCTOR[fqName=null, hasBody=false, isDelegatedCallToThis=false, isExtension=false, isTopLevel=false, name=Nested] + MODIFIER_LIST[public] + VALUE_PARAMETER_LIST + SUPER_TYPE_LIST + SUPER_TYPE_ENTRY + TYPE_REFERENCE + USER_TYPE + USER_TYPE + REFERENCE_EXPRESSION[referencedName=test] + REFERENCE_EXPRESSION[referencedName=SealedInterface] + CLASS_BODY + OBJECT_DECLARATION[classId=test/SealedInterface.Top, fqName=test.SealedInterface.Top, isCompanion=false, isLocal=false, isObjectLiteral=false, isTopLevel=false, name=Top, superNames=[SealedInterface]] + MODIFIER_LIST[public] + SUPER_TYPE_LIST + SUPER_TYPE_ENTRY + TYPE_REFERENCE + USER_TYPE + USER_TYPE + REFERENCE_EXPRESSION[referencedName=test] + REFERENCE_EXPRESSION[referencedName=SealedInterface] + CLASS_BODY diff --git a/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderK2CompilerTestGenerated.java b/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderK2CompilerTestGenerated.java index 835e777e1ba..7daaaa35bc2 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderK2CompilerTestGenerated.java +++ b/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderK2CompilerTestGenerated.java @@ -240,6 +240,12 @@ public class ClsStubBuilderK2CompilerTestGenerated extends AbstractClsStubBuilde runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/"); } + @Test + @TestMetadata("SealedInterface") + public void testSealedInterface() throws Exception { + runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/"); + } + @Test @TestMetadata("SecondaryConstructors") public void testSecondaryConstructors() throws Exception { diff --git a/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderTestGenerated.java b/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderTestGenerated.java index 2a622fef04a..50984468fdb 100644 --- a/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderTestGenerated.java +++ b/analysis/decompiled/decompiler-to-file-stubs/tests/org/jetbrains/kotlin/analysis/decompiler/stub/files/ClsStubBuilderTestGenerated.java @@ -240,6 +240,12 @@ public class ClsStubBuilderTestGenerated extends AbstractClsStubBuilderTest { runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/"); } + @Test + @TestMetadata("SealedInterface") + public void testSealedInterface() throws Exception { + runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/"); + } + @Test @TestMetadata("SecondaryConstructors") public void testSecondaryConstructors() throws Exception { diff --git a/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderK2CompilerTestGenerated.java b/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderK2CompilerTestGenerated.java index 029297ae9ea..bf2a541d160 100644 --- a/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderK2CompilerTestGenerated.java +++ b/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderK2CompilerTestGenerated.java @@ -240,6 +240,12 @@ public class ByDecompiledPsiStubBuilderK2CompilerTestGenerated extends AbstractB runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/"); } + @Test + @TestMetadata("SealedInterface") + public void testSealedInterface() throws Exception { + runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/"); + } + @Test @TestMetadata("SecondaryConstructors") public void testSecondaryConstructors() throws Exception { diff --git a/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderTestGenerated.java b/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderTestGenerated.java index 9db2ef417b4..a9fd3f24cc4 100644 --- a/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderTestGenerated.java +++ b/analysis/decompiled/decompiler-to-psi/tests/org/jetbrains/kotlin/analysis/decompiler/psi/ByDecompiledPsiStubBuilderTestGenerated.java @@ -240,6 +240,12 @@ public class ByDecompiledPsiStubBuilderTestGenerated extends AbstractByDecompile runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/Sealed/"); } + @Test + @TestMetadata("SealedInterface") + public void testSealedInterface() throws Exception { + runTest("analysis/decompiled/decompiler-to-file-stubs/testData/clsFileStubBuilder/SealedInterface/"); + } + @Test @TestMetadata("SecondaryConstructors") public void testSecondaryConstructors() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK1CompiledJvmKotlinTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK1CompiledJvmKotlinTestGenerated.java index f548bb25d46..1c10810ed23 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK1CompiledJvmKotlinTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK1CompiledJvmKotlinTestGenerated.java @@ -776,6 +776,12 @@ public class FirLoadK1CompiledJvmKotlinTestGenerated extends AbstractFirLoadK1Co runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @Test + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @Test @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK2CompiledJvmKotlinTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK2CompiledJvmKotlinTestGenerated.java index 99ad1b209e0..bf457026a48 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK2CompiledJvmKotlinTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLoadK2CompiledJvmKotlinTestGenerated.java @@ -776,6 +776,12 @@ public class FirLoadK2CompiledJvmKotlinTestGenerated extends AbstractFirLoadK2Co runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @Test + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @Test @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { diff --git a/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.fir.txt b/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.fir.txt new file mode 100644 index 00000000000..35cdc4a3c0c --- /dev/null +++ b/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.fir.txt @@ -0,0 +1,17 @@ +public final class Inheritor2 : R|test/SealedInterface| { + public constructor(): R|test/Inheritor2| + +} + +public final class Inheritor3 : R|test/SealedInterface| { + public constructor(): R|test/Inheritor3| + +} + +public sealed interface SealedInterface : R|kotlin/Any| { + public final class Inheritor1 : R|test/SealedInterface| { + public constructor(): R|test/SealedInterface.Inheritor1| + + } + +} diff --git a/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt b/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt new file mode 100644 index 00000000000..944c7ca7933 --- /dev/null +++ b/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt @@ -0,0 +1,9 @@ +package test + +class Inheritor3 : SealedInterface + +sealed interface SealedInterface { + class Inheritor1 : SealedInterface +} + +class Inheritor2 : SealedInterface diff --git a/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.txt b/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.txt new file mode 100644 index 00000000000..beac5305150 --- /dev/null +++ b/compiler/testData/loadJava/compiledKotlin/class/SealedInterface.txt @@ -0,0 +1,16 @@ +package test + +public final class Inheritor2 : test.SealedInterface { + /*primary*/ public constructor Inheritor2() +} + +public final class Inheritor3 : test.SealedInterface { + /*primary*/ public constructor Inheritor3() +} + +public sealed interface SealedInterface { + + public final class Inheritor1 : test.SealedInterface { + /*primary*/ public constructor Inheritor1() + } +} diff --git a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadJavaTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadJavaTestGenerated.java index 9a6fee450a4..b1104b04bc4 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadJavaTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadJavaTestGenerated.java @@ -2388,6 +2388,11 @@ public class LoadJavaTestGenerated extends AbstractLoadJavaTest { runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { runTest("compiler/testData/loadJava/compiledKotlin/class/SingleAbstractMethod.kt"); diff --git a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadKotlinWithTypeTableTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadKotlinWithTypeTableTestGenerated.java index 5b9beb755aa..4b7d949ef79 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadKotlinWithTypeTableTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/LoadKotlinWithTypeTableTestGenerated.java @@ -695,6 +695,11 @@ public class LoadKotlinWithTypeTableTestGenerated extends AbstractLoadKotlinWith runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { runTest("compiler/testData/loadJava/compiledKotlin/class/SingleAbstractMethod.kt"); diff --git a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/ir/IrLoadJavaTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/ir/IrLoadJavaTestGenerated.java index 5a38cc71306..10a66dbe1d2 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/ir/IrLoadJavaTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/ir/IrLoadJavaTestGenerated.java @@ -2389,6 +2389,11 @@ public class IrLoadJavaTestGenerated extends AbstractIrLoadJavaTest { runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { runTest("compiler/testData/loadJava/compiledKotlin/class/SingleAbstractMethod.kt"); diff --git a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/javac/LoadJavaUsingJavacTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/javac/LoadJavaUsingJavacTestGenerated.java index c16f0eb48d5..6b51320d7dd 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/javac/LoadJavaUsingJavacTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/jvm/compiler/javac/LoadJavaUsingJavacTestGenerated.java @@ -2388,6 +2388,11 @@ public class LoadJavaUsingJavacTestGenerated extends AbstractLoadJavaUsingJavacT runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { runTest("compiler/testData/loadJava/compiledKotlin/class/SingleAbstractMethod.kt"); diff --git a/core/descriptors.runtime/tests/org/jetbrains/kotlin/jvm/runtime/JvmRuntimeDescriptorLoaderTestGenerated.java b/core/descriptors.runtime/tests/org/jetbrains/kotlin/jvm/runtime/JvmRuntimeDescriptorLoaderTestGenerated.java index 10db51e43e5..5431387e027 100644 --- a/core/descriptors.runtime/tests/org/jetbrains/kotlin/jvm/runtime/JvmRuntimeDescriptorLoaderTestGenerated.java +++ b/core/descriptors.runtime/tests/org/jetbrains/kotlin/jvm/runtime/JvmRuntimeDescriptorLoaderTestGenerated.java @@ -697,6 +697,11 @@ public class JvmRuntimeDescriptorLoaderTestGenerated extends AbstractJvmRuntimeD runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception { runTest("compiler/testData/loadJava/compiledKotlin/class/SingleAbstractMethod.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirLoadK2CompiledJsKotlinTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirLoadK2CompiledJsKotlinTestGenerated.java index 69578dd0d23..bf390e8d231 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirLoadK2CompiledJsKotlinTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirLoadK2CompiledJsKotlinTestGenerated.java @@ -722,6 +722,12 @@ public class FirLoadK2CompiledJsKotlinTestGenerated extends AbstractFirLoadK2Com runTest("compiler/testData/loadJava/compiledKotlin/class/SealedClass.kt"); } + @Test + @TestMetadata("SealedInterface.kt") + public void testSealedInterface() throws Exception { + runTest("compiler/testData/loadJava/compiledKotlin/class/SealedInterface.kt"); + } + @Test @TestMetadata("SingleAbstractMethod.kt") public void testSingleAbstractMethod() throws Exception {