From 4532f5289897b190d15b1a1f972452110383780c Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Thu, 23 Nov 2023 15:07:18 +0100 Subject: [PATCH] IR text tests: Unmute enum class-related tests Making enum class-related tests unmuted requires implementing a special "compatibility" mode for IR tree dumper to filter out fake override declarations leaking from java.enum.Enum and kotlin.Enum (JVM-only) classes. --- .../jetbrains/kotlin/ir/util/DumpIrTree.kt | 18 +- .../ir/irText/classes/classes.fir.ir.txt | 12 - .../testData/ir/irText/classes/classes.ir.txt | 12 - .../testData/ir/irText/classes/classes.kt | 5 - .../ir/irText/classes/classes.sig.kt.txt | 51 +- .../ir/irText/classes/enum.fir.ir.txt | 108 --- .../testData/ir/irText/classes/enum.ir.txt | 108 --- compiler/testData/ir/irText/classes/enum.kt | 2 - .../ir/irText/classes/enum.sig.kt.txt | 547 +++++++-------- .../classes/enumClassModality.fir.ir.txt | 132 ---- .../irText/classes/enumClassModality.ir.txt | 132 ---- .../ir/irText/classes/enumClassModality.kt | 3 - .../classes/enumClassModality.sig.kt.txt | 622 ++++++++---------- .../ir/irText/classes/enumEntries.fir.ir.txt | 12 - .../ir/irText/classes/enumEntries.ir.txt | 12 - .../ir/irText/classes/enumEntries.sig.kt.txt | 6 - .../classes/enumWithMultipleCtors.fir.ir.txt | 24 - .../classes/enumWithMultipleCtors.ir.txt | 24 - .../irText/classes/enumWithMultipleCtors.kt | 3 - .../classes/enumWithMultipleCtors.sig.kt.txt | 138 ++-- .../classes/enumWithSecondaryCtor.fir.ir.txt | 60 -- .../classes/enumWithSecondaryCtor.ir.txt | 60 -- .../irText/classes/enumWithSecondaryCtor.kt | 2 - .../classes/enumWithSecondaryCtor.sig.kt.txt | 288 ++++---- .../classesWithAnnotations.fir.ir.txt | 12 - .../annotations/classesWithAnnotations.ir.txt | 12 - .../annotations/classesWithAnnotations.kt | 5 - .../classesWithAnnotations.sig.kt.txt | 51 +- .../enumEntriesWithAnnotations.fir.ir.txt | 24 - .../enumEntriesWithAnnotations.ir.txt | 24 - .../annotations/enumEntriesWithAnnotations.kt | 5 - .../enumsInAnnotationArguments.fir.ir.txt | 12 - .../enumsInAnnotationArguments.ir.txt | 12 - .../annotations/enumsInAnnotationArguments.kt | 5 - .../enumsInAnnotationArguments.sig.kt.txt | 48 +- ...notationWithSingleArrayArgument.fir.ir.txt | 12 - ...vaAnnotationWithSingleArrayArgument.ir.txt | 12 - .../multiplatform/expectedEnumClass.ir.txt | 24 - .../multiplatform/expectedEnumClass.kt | 5 - .../expectedEnumClass.sig.kt.txt | 113 ++-- .../multiplatform/expectedEnumClass2.ir.txt | 12 - .../multiplatform/expectedEnumClass2.kt | 2 - .../expectedEnumClass2.sig.kt.txt | 47 +- .../enumEntryAsReceiver.fir.ir.txt | 24 - .../expressions/enumEntryAsReceiver.ir.txt | 24 - .../irText/expressions/enumEntryAsReceiver.kt | 3 - .../enumEntryAsReceiver.sig.kt.txt | 118 ++-- ...ntryReferenceFromEnumEntryClass.fir.ir.txt | 24 - ...numEntryReferenceFromEnumEntryClass.ir.txt | 24 - .../enumEntryReferenceFromEnumEntryClass.kt | 5 - .../exhaustiveWhenElseBranch.fir.ir.txt | 12 - .../exhaustiveWhenElseBranch.ir.txt | 12 - .../expressions/exhaustiveWhenElseBranch.kt | 5 - .../exhaustiveWhenElseBranch.sig.kt.txt | 58 +- .../expressions/objectAsCallable.fir.ir.txt | 12 - .../expressions/objectAsCallable.ir.txt | 12 - .../ir/irText/expressions/objectAsCallable.kt | 5 - .../expressions/objectAsCallable.sig.kt.txt | 61 +- ...temporaryInEnumEntryInitializer.fir.ir.txt | 12 - .../temporaryInEnumEntryInitializer.ir.txt | 12 - .../temporaryInEnumEntryInitializer.kt | 5 - ...temporaryInEnumEntryInitializer.sig.kt.txt | 50 +- .../ir/irText/expressions/values.fir.ir.txt | 12 - .../ir/irText/expressions/values.ir.txt | 12 - .../testData/ir/irText/expressions/values.kt | 5 - .../ir/irText/expressions/values.sig.kt.txt | 73 +- .../whenSmartCastToEnum.fir.ir.txt | 12 - .../expressions/whenSmartCastToEnum.ir.txt | 12 - .../irText/expressions/whenSmartCastToEnum.kt | 5 - .../whenSmartCastToEnum.sig.kt.txt | 52 +- ...ambdaInEnumEntryConstructorCall.fir.ir.txt | 12 - .../lambdaInEnumEntryConstructorCall.ir.txt | 12 - .../lambdaInEnumEntryConstructorCall.kt | 2 - ...ambdaInEnumEntryConstructorCall.sig.kt.txt | 50 +- .../thisInEnumConstructor.fir.ir.txt | 12 - .../firProblems/thisInEnumConstructor.ir.txt | 12 - .../firProblems/thisInEnumConstructor.kt | 4 - .../thisInEnumConstructor.sig.kt.txt | 50 +- .../ir/irText/singletons/enumEntry.fir.ir.txt | 24 - .../ir/irText/singletons/enumEntry.ir.txt | 24 - .../ir/irText/singletons/enumEntry.kt | 3 - .../ir/irText/singletons/enumEntry.sig.kt.txt | 108 ++- .../IrMangledNameAndSignatureDumpHandler.kt | 14 +- .../backend/handlers/IrTextDumpHandler.kt | 24 + 84 files changed, 1165 insertions(+), 2665 deletions(-) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DumpIrTree.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DumpIrTree.kt index 97581014304..b2e137c1669 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DumpIrTree.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DumpIrTree.kt @@ -48,10 +48,11 @@ fun IrFile.dumpTreesFromLineNumber(lineNumber: Int, options: DumpIrTreeOptions = * @property stableOrder Print declarations in a sorted order * @property verboseErrorTypes Whether to dump the value of [IrErrorType.kotlinType] for [IrErrorType] nodes * @property printFacadeClassInFqNames Whether printed fully-qualified names of top-level declarations should include the name of - * the file facade class (see [IrDeclarationOrigin.FILE_CLASS]) - * @property printFlagsInDeclarationReferences If `false`, flags like `fake_override`, `inline` etc. are not printed in rendered declaration - * references. + * the file facade class (see [IrDeclarationOrigin.FILE_CLASS]) TODO: use [isHiddenDeclaration] instead. + * @property printFlagsInDeclarationReferences If `false`, flags like `fake_override`, `inline` etc. are not printed in rendered + * declaration references. * @property printSignatures Whether to print signatures for nodes that have public signatures + * @property isHiddenDeclaration The filter that can be used to exclude some declarations from printing. */ data class DumpIrTreeOptions( val normalizeNames: Boolean = false, @@ -63,6 +64,7 @@ data class DumpIrTreeOptions( val printTypeAbbreviations: Boolean = true, val printModuleName: Boolean = true, val printFilePath: Boolean = true, + val isHiddenDeclaration: (IrDeclaration) -> Boolean = { false }, ) private fun IrFile.shouldSkipDump(): Boolean { @@ -112,6 +114,8 @@ class DumpIrTreeVisitor( private fun List.ordered(): List = if (options.stableOrder) stableOrdered() else this + private fun IrDeclaration.isHidden(): Boolean = options.isHiddenDeclaration(this) + override fun visitElement(element: IrElement, data: String) { element.dumpLabeledElementWith(data) { if (element is IrAnnotationContainer) { @@ -141,6 +145,7 @@ class DumpIrTreeVisitor( } override fun visitClass(declaration: IrClass, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.sealedSubclasses.dumpItems("sealedSubclasses") { it.dump() } @@ -151,6 +156,7 @@ class DumpIrTreeVisitor( } override fun visitTypeAlias(declaration: IrTypeAlias, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.typeParameters.dumpElements() @@ -158,12 +164,14 @@ class DumpIrTreeVisitor( } override fun visitTypeParameter(declaration: IrTypeParameter, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) } } override fun visitSimpleFunction(declaration: IrSimpleFunction, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.correspondingPropertySymbol?.dumpInternal("correspondingProperty") @@ -196,6 +204,7 @@ class DumpIrTreeVisitor( ) override fun visitConstructor(declaration: IrConstructor, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.typeParameters.dumpElements() @@ -206,6 +215,7 @@ class DumpIrTreeVisitor( } override fun visitProperty(declaration: IrProperty, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.overriddenSymbols.dumpItems("overridden") { it.dump() } @@ -216,6 +226,7 @@ class DumpIrTreeVisitor( } override fun visitField(declaration: IrField, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.initializer?.accept(this, "") @@ -234,6 +245,7 @@ class DumpIrTreeVisitor( } override fun visitEnumEntry(declaration: IrEnumEntry, data: String) { + if (declaration.isHidden()) return declaration.dumpLabeledElementWith(data) { dumpAnnotations(declaration) declaration.initializerExpression?.accept(this, "init") diff --git a/compiler/testData/ir/irText/classes/classes.fir.ir.txt b/compiler/testData/ir/irText/classes/classes.fir.ir.txt index 467c78e95fa..d9163c8a247 100644 --- a/compiler/testData/ir/irText/classes/classes.fir.ir.txt +++ b/compiler/testData/ir/irText/classes/classes.fir.ir.txt @@ -87,10 +87,6 @@ FILE fqName: fileName:/classes.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnumClass> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>, other:.TestEnumClass) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -127,11 +123,3 @@ FILE fqName: fileName:/classes.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnumClass?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> diff --git a/compiler/testData/ir/irText/classes/classes.ir.txt b/compiler/testData/ir/irText/classes/classes.ir.txt index a4a80ad3fea..caac4700321 100644 --- a/compiler/testData/ir/irText/classes/classes.ir.txt +++ b/compiler/testData/ir/irText/classes/classes.ir.txt @@ -96,10 +96,6 @@ FILE fqName: fileName:/classes.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>, other:.TestEnumClass) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -110,14 +106,6 @@ FILE fqName: fileName:/classes.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnumClass?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnumClass> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnumClass>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/classes/classes.kt b/compiler/testData/ir/irText/classes/classes.kt index 81c29547ffc..d53e2610b76 100644 --- a/compiler/testData/ir/irText/classes/classes.kt +++ b/compiler/testData/ir/irText/classes/classes.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - class TestClass interface TestInterface diff --git a/compiler/testData/ir/irText/classes/classes.sig.kt.txt b/compiler/testData/ir/irText/classes/classes.sig.kt.txt index 24ed0f30c1e..6056dee9490 100644 --- a/compiler/testData/ir/irText/classes/classes.sig.kt.txt +++ b/compiler/testData/ir/irText/classes/classes.sig.kt.txt @@ -51,24 +51,14 @@ enum class TestEnumClass : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnumClass#clone(){}kotlin.Any - // Public signature: /TestEnumClass.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass#compareTo(TestEnumClass){} - // Public signature: /TestEnumClass.compareTo|5404150121610277282[0] - // Public signature debug description: compareTo(TestEnumClass){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnumClass#compareTo(TestEnumClass){}kotlin.Int // Public signature: /TestEnumClass.compareTo|-9135154948806454387[0] // Public signature debug description: compareTo(TestEnumClass){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass#equals(kotlin.Any?){} - // Public signature: /TestEnumClass.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestEnumClass#compareTo(TestEnumClass){} + // Public signature: /TestEnumClass.compareTo|5404150121610277282[0] + // Public signature debug description: compareTo(TestEnumClass){} /* fake */ override operator fun compareTo(other: TestEnumClass): Int // CHECK JVM_IR: @@ -76,9 +66,9 @@ enum class TestEnumClass : Enum { // Public signature: /TestEnumClass.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass#hashCode(){} - // Public signature: /TestEnumClass.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestEnumClass#equals(kotlin.Any?){} + // Public signature: /TestEnumClass.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -86,9 +76,9 @@ enum class TestEnumClass : Enum { // Public signature: /TestEnumClass.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass#toString(){} - // Public signature: /TestEnumClass.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnumClass#hashCode(){} + // Public signature: /TestEnumClass.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -96,9 +86,9 @@ enum class TestEnumClass : Enum { // Public signature: /TestEnumClass.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass#static{}entries - // Public signature: /TestEnumClass.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestEnumClass#toString(){} + // Public signature: /TestEnumClass.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -111,9 +101,9 @@ enum class TestEnumClass : Enum { // Public signature: /TestEnumClass.entries.|-5859730592340272958[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass{}name - // Public signature: /TestEnumClass.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnumClass##static(){} + // Public signature: /TestEnumClass.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -126,9 +116,9 @@ enum class TestEnumClass : Enum { // Public signature: /TestEnumClass.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnumClass{}ordinal - // Public signature: /TestEnumClass.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnumClass#(){} + // Public signature: /TestEnumClass.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -141,8 +131,9 @@ enum class TestEnumClass : Enum { // Public signature: /TestEnumClass.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestInterface - // Public signature: /TestInterface|null[0] + // Mangled name: TestEnumClass#(){} + // Public signature: /TestEnumClass.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/classes/enum.fir.ir.txt b/compiler/testData/ir/irText/classes/enum.fir.ir.txt index 7dfda9d807d..c2f80d7d1dd 100644 --- a/compiler/testData/ir/irText/classes/enum.fir.ir.txt +++ b/compiler/testData/ir/irText/classes/enum.fir.ir.txt @@ -21,10 +21,6 @@ FILE fqName: fileName:/enum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum1> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>, other:.TestEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -61,14 +57,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> CLASS ENUM_CLASS name:TestEnum2 modality:FINAL visibility:public superTypes:[kotlin.Enum<.TestEnum2>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestEnum2 CONSTRUCTOR visibility:private <> (x:kotlin.Int) returnType:.TestEnum2 [primary] @@ -109,10 +97,6 @@ FILE fqName: fileName:/enum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum2> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>, other:.TestEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -149,14 +133,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> CLASS ENUM_CLASS name:TestEnum3 modality:ABSTRACT visibility:public superTypes:[kotlin.Enum<.TestEnum3>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestEnum3 CONSTRUCTOR visibility:private <> () returnType:.TestEnum3 [primary] @@ -180,10 +156,6 @@ FILE fqName: fileName:/enum.kt BLOCK_BODY CALL 'public final fun println (message: kotlin.Any?): kotlin.Unit declared in kotlin.io' type=kotlin.Unit origin=null message: CONST String type=kotlin.String value="Hello, world!" - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum3 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>, other:.TestEnum3) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum3): kotlin.Int declared in .TestEnum3 @@ -220,14 +192,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum3 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum3?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum3?>? declared in .TestEnum3 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum3 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN name:foo visibility:public modality:ABSTRACT <> ($this:.TestEnum3) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.TestEnum3 FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.TestEnum3> @@ -239,10 +203,6 @@ FILE fqName: fileName:/enum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum3> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>, other:.TestEnum3) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -279,14 +239,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum3?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> CLASS ENUM_CLASS name:TestEnum4 modality:ABSTRACT visibility:public superTypes:[kotlin.Enum<.TestEnum4>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestEnum4 CONSTRUCTOR visibility:private <> (x:kotlin.Int) returnType:.TestEnum4 [primary] @@ -331,10 +283,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum4 $this: VALUE_PARAMETER name: type:.TestEnum4 - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>, other:.TestEnum4) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum4): kotlin.Int declared in .TestEnum4 @@ -371,14 +319,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum4 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> ENUM_ENTRY name:TEST2 init: EXPRESSION_BODY ENUM_CONSTRUCTOR_CALL 'private constructor () declared in .TestEnum4.TEST2' @@ -419,10 +359,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum4 $this: VALUE_PARAMETER name: type:.TestEnum4 - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>, other:.TestEnum4) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum4): kotlin.Int declared in .TestEnum4 @@ -459,14 +395,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum4 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN name:foo visibility:public modality:ABSTRACT <> ($this:.TestEnum4) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.TestEnum4 FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.TestEnum4> @@ -478,10 +406,6 @@ FILE fqName: fileName:/enum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum4> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>, other:.TestEnum4) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -518,14 +442,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> CLASS ENUM_CLASS name:TestEnum5 modality:FINAL visibility:public superTypes:[kotlin.Enum<.TestEnum5>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestEnum5 CONSTRUCTOR visibility:private <> (x:kotlin.Int) returnType:.TestEnum5 [primary] @@ -566,10 +482,6 @@ FILE fqName: fileName:/enum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum5> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>, other:.TestEnum5) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -606,14 +518,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum5?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> FUN name:f visibility:public modality:FINAL <> () returnType:kotlin.Int BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun f (): kotlin.Int declared in ' @@ -668,10 +572,6 @@ FILE fqName: fileName:/enum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum6> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>, other:.TestEnum6) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -708,11 +608,3 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum6?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> diff --git a/compiler/testData/ir/irText/classes/enum.ir.txt b/compiler/testData/ir/irText/classes/enum.ir.txt index ec25642a55f..4be82b9e898 100644 --- a/compiler/testData/ir/irText/classes/enum.ir.txt +++ b/compiler/testData/ir/irText/classes/enum.ir.txt @@ -30,10 +30,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>, other:.TestEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -44,14 +40,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -118,10 +106,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>, other:.TestEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -132,14 +116,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -199,10 +175,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum3 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum3 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>, other:.TestEnum3) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum3): kotlin.Int declared in .TestEnum3 @@ -213,14 +185,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestEnum3 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum3 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum3?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum3?>? declared in .TestEnum3 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestEnum3 @@ -249,10 +213,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>, other:.TestEnum3) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -263,14 +223,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum3?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum3> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum3>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -351,10 +303,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum4 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>, other:.TestEnum4) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum4): kotlin.Int declared in .TestEnum4 @@ -365,14 +313,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestEnum4 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestEnum4 @@ -440,10 +380,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in .TestEnum4 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>, other:.TestEnum4) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum4): kotlin.Int declared in .TestEnum4 @@ -454,14 +390,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestEnum4 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? declared in .TestEnum4 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestEnum4 @@ -490,10 +418,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>, other:.TestEnum4) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -504,14 +428,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum4?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum4> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum4>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -578,10 +494,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>, other:.TestEnum5) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -592,14 +504,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum5?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum5> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum5>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -680,10 +584,6 @@ FILE fqName: fileName:/enum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>, other:.TestEnum6) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -694,14 +594,6 @@ FILE fqName: fileName:/enum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum6?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum6> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum6>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/classes/enum.kt b/compiler/testData/ir/irText/classes/enum.kt index 60fef6591c9..b8091a8c8fa 100644 --- a/compiler/testData/ir/irText/classes/enum.kt +++ b/compiler/testData/ir/irText/classes/enum.kt @@ -1,6 +1,4 @@ // WITH_STDLIB -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize (K1), getDeclaringClass (K1), clone (K2) enum class TestEnum1 { TEST1, TEST2 diff --git a/compiler/testData/ir/irText/classes/enum.sig.kt.txt b/compiler/testData/ir/irText/classes/enum.sig.kt.txt index 25a930883ce..4e2bcbbe6fc 100644 --- a/compiler/testData/ir/irText/classes/enum.sig.kt.txt +++ b/compiler/testData/ir/irText/classes/enum.sig.kt.txt @@ -37,24 +37,14 @@ enum class TestEnum1 : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum1#clone(){}kotlin.Any - // Public signature: /TestEnum1.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1#compareTo(TestEnum1){} - // Public signature: /TestEnum1.compareTo|620946564205650373[0] - // Public signature debug description: compareTo(TestEnum1){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum1#compareTo(TestEnum1){}kotlin.Int // Public signature: /TestEnum1.compareTo|2053309372276441830[0] // Public signature debug description: compareTo(TestEnum1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1#equals(kotlin.Any?){} - // Public signature: /TestEnum1.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestEnum1#compareTo(TestEnum1){} + // Public signature: /TestEnum1.compareTo|620946564205650373[0] + // Public signature debug description: compareTo(TestEnum1){} /* fake */ override operator fun compareTo(other: TestEnum1): Int // CHECK JVM_IR: @@ -62,9 +52,9 @@ enum class TestEnum1 : Enum { // Public signature: /TestEnum1.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1#hashCode(){} - // Public signature: /TestEnum1.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestEnum1#equals(kotlin.Any?){} + // Public signature: /TestEnum1.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -72,9 +62,9 @@ enum class TestEnum1 : Enum { // Public signature: /TestEnum1.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1#toString(){} - // Public signature: /TestEnum1.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum1#hashCode(){} + // Public signature: /TestEnum1.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -82,9 +72,9 @@ enum class TestEnum1 : Enum { // Public signature: /TestEnum1.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1#static{}entries - // Public signature: /TestEnum1.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestEnum1#toString(){} + // Public signature: /TestEnum1.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -97,9 +87,9 @@ enum class TestEnum1 : Enum { // Public signature: /TestEnum1.entries.|-834374959367663023[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1{}name - // Public signature: /TestEnum1.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum1##static(){} + // Public signature: /TestEnum1.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -112,9 +102,9 @@ enum class TestEnum1 : Enum { // Public signature: /TestEnum1.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum1{}ordinal - // Public signature: /TestEnum1.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnum1#(){} + // Public signature: /TestEnum1.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -127,8 +117,9 @@ enum class TestEnum1 : Enum { // Public signature: /TestEnum1.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2 - // Public signature: /TestEnum2|null[0] + // Mangled name: TestEnum1#(){} + // Public signature: /TestEnum1.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -147,9 +138,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#(kotlin.Int){} - // Public signature: /TestEnum2.|-5182794243525578284[0] - // Public signature debug description: (kotlin.Int){} + // Mangled name: TestEnum2#(){} + // Public signature: /TestEnum2.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -177,9 +168,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.valueOf|-8239244547219711173[0] // Public signature debug description: valueOf#static(kotlin.String){}TestEnum2 // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#values#static(){} - // Public signature: /TestEnum2.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: TestEnum2#valueOf#static(kotlin.String){} + // Public signature: /TestEnum2.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestEnum2 // CHECK JVM_IR: @@ -187,29 +178,19 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.values|-8089803756089363016[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#compareTo(TestEnum2){} - // Public signature: /TestEnum2.compareTo|-7814829049390923815[0] - // Public signature debug description: compareTo(TestEnum2){} + // Mangled name: TestEnum2#values#static(){} + // Public signature: /TestEnum2.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum2#clone(){}kotlin.Any - // Public signature: /TestEnum2.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#equals(kotlin.Any?){} - // Public signature: /TestEnum2.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum2#compareTo(TestEnum2){}kotlin.Int // Public signature: /TestEnum2.compareTo|-5150224806840857090[0] // Public signature debug description: compareTo(TestEnum2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#hashCode(){} - // Public signature: /TestEnum2.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestEnum2#compareTo(TestEnum2){} + // Public signature: /TestEnum2.compareTo|-7814829049390923815[0] + // Public signature debug description: compareTo(TestEnum2){} /* fake */ override operator fun compareTo(other: TestEnum2): Int // CHECK JVM_IR: @@ -217,9 +198,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#toString(){} - // Public signature: /TestEnum2.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum2#equals(kotlin.Any?){} + // Public signature: /TestEnum2.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -227,9 +208,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#static{}entries - // Public signature: /TestEnum2.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestEnum2#hashCode(){} + // Public signature: /TestEnum2.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -237,9 +218,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2##static(){} - // Public signature: /TestEnum2.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: TestEnum2#toString(){} + // Public signature: /TestEnum2.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -252,9 +233,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.entries.|-6243748706014676194[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#(){} - // Public signature: /TestEnum2.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestEnum2##static(){} + // Public signature: /TestEnum2.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -267,9 +248,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum2#(){} - // Public signature: /TestEnum2.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum2#(){} + // Public signature: /TestEnum2.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -282,9 +263,9 @@ enum class TestEnum2 : Enum { // Public signature: /TestEnum2.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#(){} - // Public signature: /TestEnum3.|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestEnum2#(){} + // Public signature: /TestEnum2.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -312,24 +293,14 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.TEST..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestEnum3.TEST#clone(){}kotlin.Any - // Public signature: /TestEnum3.TEST..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3.TEST#hashCode(){} - // Public signature: /TestEnum3.TEST..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum3.TEST#compareTo(TestEnum3){}kotlin.Int // Public signature: /TestEnum3.TEST..compareTo|3758334100252612666[0] // Public signature debug description: compareTo(TestEnum3){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3.TEST#toString(){} - // Public signature: /TestEnum3.TEST..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum3.TEST#compareTo(TestEnum3){} + // Public signature: /TestEnum3.TEST..compareTo|-8584066847092174536[0] + // Public signature debug description: compareTo(TestEnum3){} /* fake */ override operator fun compareTo(other: TestEnum3): Int // CHECK JVM_IR: @@ -337,9 +308,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.TEST..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3.TEST#foo(){} - // Public signature: /TestEnum3.TEST..foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestEnum3.TEST#equals(kotlin.Any?){} + // Public signature: /TestEnum3.TEST..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -347,9 +318,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.TEST..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3.TEST{}name - // Public signature: /TestEnum3.TEST..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum3.TEST#hashCode(){} + // Public signature: /TestEnum3.TEST..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -357,9 +328,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.TEST..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3.TEST#(){} - // Public signature: /TestEnum3.TEST..name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestEnum3.TEST#toString(){} + // Public signature: /TestEnum3.TEST..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -378,9 +349,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.TEST..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#valueOf#static(kotlin.String){} - // Public signature: /TestEnum3.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestEnum3.TEST#(){} + // Public signature: /TestEnum3.TEST..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -393,9 +364,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.TEST..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#compareTo(TestEnum3){} - // Public signature: /TestEnum3.compareTo|-8584066847092174536[0] - // Public signature debug description: compareTo(TestEnum3){} + // Mangled name: TestEnum3.TEST#(){} + // Public signature: /TestEnum3.TEST..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -405,9 +376,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.valueOf|2590925147797279879[0] // Public signature debug description: valueOf#static(kotlin.String){}TestEnum3 // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#equals(kotlin.Any?){} - // Public signature: /TestEnum3.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestEnum3#valueOf#static(kotlin.String){} + // Public signature: /TestEnum3.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestEnum3 // CHECK JVM_IR: @@ -415,29 +386,19 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.values|-3929439371307377630[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#hashCode(){} - // Public signature: /TestEnum3.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestEnum3#values#static(){} + // Public signature: /TestEnum3.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum3#clone(){}kotlin.Any - // Public signature: /TestEnum3.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#toString(){} - // Public signature: /TestEnum3.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum3#compareTo(TestEnum3){}kotlin.Int // Public signature: /TestEnum3.compareTo|3758334100252612666[0] // Public signature debug description: compareTo(TestEnum3){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#foo(){} - // Public signature: /TestEnum3.foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestEnum3#compareTo(TestEnum3){} + // Public signature: /TestEnum3.compareTo|-8584066847092174536[0] + // Public signature debug description: compareTo(TestEnum3){} /* fake */ override operator fun compareTo(other: TestEnum3): Int // CHECK JVM_IR: @@ -445,9 +406,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#static{}entries - // Public signature: /TestEnum3.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestEnum3#equals(kotlin.Any?){} + // Public signature: /TestEnum3.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -455,9 +416,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3##static(){} - // Public signature: /TestEnum3.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: TestEnum3#hashCode(){} + // Public signature: /TestEnum3.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -465,9 +426,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3{}name - // Public signature: /TestEnum3.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum3#toString(){} + // Public signature: /TestEnum3.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -486,9 +447,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.entries.|-6780028181727590184[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnum3#(){} - // Public signature: /TestEnum3.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum3##static(){} + // Public signature: /TestEnum3.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -501,9 +462,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4{}x - // Public signature: /TestEnum4.x|-8060530855978347579[0] - // Public signature debug description: {}x + // Mangled name: TestEnum3#(){} + // Public signature: /TestEnum3.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -516,9 +477,9 @@ abstract enum class TestEnum3 : Enum { // Public signature: /TestEnum3.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#(kotlin.Int){} - // Public signature: /TestEnum4.|-5182794243525578284[0] - // Public signature debug description: (kotlin.Int){} + // Mangled name: TestEnum3#(){} + // Public signature: /TestEnum3.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -537,9 +498,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST1#(){} - // Public signature: /TestEnum4.TEST1..|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4#(){} + // Public signature: /TestEnum4.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -561,24 +522,14 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestEnum4.TEST1#clone(){}kotlin.Any - // Public signature: /TestEnum4.TEST1..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST1#foo(){} - // Public signature: /TestEnum4.TEST1..foo|-1041209573719867811[0] - // Public signature debug description: foo(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum4.TEST1#compareTo(TestEnum4){}kotlin.Int // Public signature: /TestEnum4.TEST1..compareTo|-8388826051358644820[0] // Public signature debug description: compareTo(TestEnum4){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST1{}name - // Public signature: /TestEnum4.TEST1..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum4.TEST1#compareTo(TestEnum4){} + // Public signature: /TestEnum4.TEST1..compareTo|3748311900854709265[0] + // Public signature debug description: compareTo(TestEnum4){} /* fake */ override operator fun compareTo(other: TestEnum4): Int // CHECK JVM_IR: @@ -586,9 +537,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST1#(){} - // Public signature: /TestEnum4.TEST1..name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4.TEST1#equals(kotlin.Any?){} + // Public signature: /TestEnum4.TEST1..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -596,9 +547,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST1{}ordinal - // Public signature: /TestEnum4.TEST1..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnum4.TEST1#hashCode(){} + // Public signature: /TestEnum4.TEST1..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -606,9 +557,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST1#(){} - // Public signature: /TestEnum4.TEST1..ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4.TEST1#toString(){} + // Public signature: /TestEnum4.TEST1..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -627,8 +578,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2 - // Public signature: /TestEnum4.TEST2|null[0] + // Mangled name: TestEnum4.TEST1#(){} + // Public signature: /TestEnum4.TEST1..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -641,9 +593,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2{}z - // Public signature: /TestEnum4.TEST2..z|7549650372729116193[0] - // Public signature debug description: {}z + // Mangled name: TestEnum4.TEST1#(){} + // Public signature: /TestEnum4.TEST1..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int // CHECK: @@ -656,9 +608,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST1..x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2#(){} - // Public signature: /TestEnum4.TEST2..|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4.TEST1#(){} + // Public signature: /TestEnum4.TEST1..x.|1482705010654679335[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -682,9 +634,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..z.|373477940260174794[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2#toString(){} - // Public signature: /TestEnum4.TEST2..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum4.TEST2#(){} + // Public signature: /TestEnum4.TEST2..z.|4925813204745917177[0] + // Public signature debug description: (){} get // CHECK: @@ -692,24 +644,14 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestEnum4.TEST2#clone(){}kotlin.Any - // Public signature: /TestEnum4.TEST2..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2{}name - // Public signature: /TestEnum4.TEST2..name|4231860309499509769[0] - // Public signature debug description: {}name - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum4.TEST2#compareTo(TestEnum4){}kotlin.Int // Public signature: /TestEnum4.TEST2..compareTo|-8388826051358644820[0] // Public signature debug description: compareTo(TestEnum4){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2#(){} - // Public signature: /TestEnum4.TEST2..name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4.TEST2#compareTo(TestEnum4){} + // Public signature: /TestEnum4.TEST2..compareTo|3748311900854709265[0] + // Public signature debug description: compareTo(TestEnum4){} /* fake */ override operator fun compareTo(other: TestEnum4): Int // CHECK JVM_IR: @@ -717,9 +659,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2{}ordinal - // Public signature: /TestEnum4.TEST2..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnum4.TEST2#equals(kotlin.Any?){} + // Public signature: /TestEnum4.TEST2..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -727,9 +669,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2#(){} - // Public signature: /TestEnum4.TEST2..ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4.TEST2#hashCode(){} + // Public signature: /TestEnum4.TEST2..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -737,9 +679,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4.TEST2{}x - // Public signature: /TestEnum4.TEST2..x|-8060530855978347579[0] - // Public signature debug description: {}x + // Mangled name: TestEnum4.TEST2#toString(){} + // Public signature: /TestEnum4.TEST2..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -758,9 +700,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#values#static(){} - // Public signature: /TestEnum4.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: TestEnum4.TEST2#(){} + // Public signature: /TestEnum4.TEST2..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -773,9 +715,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#equals(kotlin.Any?){} - // Public signature: /TestEnum4.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestEnum4.TEST2#(){} + // Public signature: /TestEnum4.TEST2..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int // CHECK: @@ -788,9 +730,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.TEST2..x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#toString(){} - // Public signature: /TestEnum4.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum4.TEST2#(){} + // Public signature: /TestEnum4.TEST2..x.|1482705010654679335[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -800,9 +742,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.valueOf|2423737738768372933[0] // Public signature debug description: valueOf#static(kotlin.String){}TestEnum4 // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#foo(){} - // Public signature: /TestEnum4.foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestEnum4#valueOf#static(kotlin.String){} + // Public signature: /TestEnum4.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestEnum4 // CHECK JVM_IR: @@ -810,29 +752,19 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.values|-3255933436834389837[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#static{}entries - // Public signature: /TestEnum4.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestEnum4#values#static(){} + // Public signature: /TestEnum4.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum4#clone(){}kotlin.Any - // Public signature: /TestEnum4.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4##static(){} - // Public signature: /TestEnum4.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum4#compareTo(TestEnum4){}kotlin.Int // Public signature: /TestEnum4.compareTo|-8388826051358644820[0] // Public signature debug description: compareTo(TestEnum4){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4{}name - // Public signature: /TestEnum4.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum4#compareTo(TestEnum4){} + // Public signature: /TestEnum4.compareTo|3748311900854709265[0] + // Public signature debug description: compareTo(TestEnum4){} /* fake */ override operator fun compareTo(other: TestEnum4): Int // CHECK JVM_IR: @@ -840,9 +772,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#(){} - // Public signature: /TestEnum4.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4#equals(kotlin.Any?){} + // Public signature: /TestEnum4.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -850,9 +782,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4{}ordinal - // Public signature: /TestEnum4.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnum4#hashCode(){} + // Public signature: /TestEnum4.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -860,9 +792,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum4#(){} - // Public signature: /TestEnum4.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4#toString(){} + // Public signature: /TestEnum4.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -881,9 +813,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.entries.|-5379266754828508305[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5#(){} - // Public signature: /TestEnum5.x.|1482705010654679335[0] - // Public signature debug description: (){} + // Mangled name: TestEnum4##static(){} + // Public signature: /TestEnum4.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -896,8 +828,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5.TEST1 - // Public signature: /TestEnum5.TEST1|null[0] + // Mangled name: TestEnum4#(){} + // Public signature: /TestEnum4.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -910,8 +843,9 @@ abstract enum class TestEnum4 : Enum { // Public signature: /TestEnum4.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5.TEST3 - // Public signature: /TestEnum5.TEST3|null[0] + // Mangled name: TestEnum4#(){} + // Public signature: /TestEnum4.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -930,9 +864,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5#compareTo(TestEnum5){} - // Public signature: /TestEnum5.compareTo|5363466639006514831[0] - // Public signature debug description: compareTo(TestEnum5){} + // Mangled name: TestEnum5#(){} + // Public signature: /TestEnum5.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -960,9 +894,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.valueOf|-5169706962915676486[0] // Public signature debug description: valueOf#static(kotlin.String){}TestEnum5 // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5##static(){} - // Public signature: /TestEnum5.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: TestEnum5#valueOf#static(kotlin.String){} + // Public signature: /TestEnum5.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestEnum5 // CHECK JVM_IR: @@ -970,29 +904,19 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.values|-344605949466928180[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5{}name - // Public signature: /TestEnum5.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum5#values#static(){} + // Public signature: /TestEnum5.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum5#clone(){}kotlin.Any - // Public signature: /TestEnum5.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5#(){} - // Public signature: /TestEnum5.name.|5879344792307730109[0] - // Public signature debug description: (){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum5#compareTo(TestEnum5){}kotlin.Int // Public signature: /TestEnum5.compareTo|-2291427915690208293[0] // Public signature debug description: compareTo(TestEnum5){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5{}ordinal - // Public signature: /TestEnum5.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnum5#compareTo(TestEnum5){} + // Public signature: /TestEnum5.compareTo|5363466639006514831[0] + // Public signature debug description: compareTo(TestEnum5){} /* fake */ override operator fun compareTo(other: TestEnum5): Int // CHECK JVM_IR: @@ -1000,9 +924,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum5#(){} - // Public signature: /TestEnum5.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum5#equals(kotlin.Any?){} + // Public signature: /TestEnum5.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -1010,8 +934,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6 - // Public signature: /TestEnum6|null[0] + // Mangled name: TestEnum5#hashCode(){} + // Public signature: /TestEnum5.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -1019,9 +944,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6{}x - // Public signature: /TestEnum6.x|-8060530855978347579[0] - // Public signature debug description: {}x + // Mangled name: TestEnum5#toString(){} + // Public signature: /TestEnum5.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -1034,9 +959,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.entries.|-7808662118823437075[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6{}y - // Public signature: /TestEnum6.y|3625903257357557171[0] - // Public signature debug description: {}y + // Mangled name: TestEnum5##static(){} + // Public signature: /TestEnum5.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -1049,9 +974,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6#(kotlin.Int;kotlin.Int){} - // Public signature: /TestEnum6.|-7691762014320324121[0] - // Public signature debug description: (kotlin.Int;kotlin.Int){} + // Mangled name: TestEnum5#(){} + // Public signature: /TestEnum5.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -1064,9 +989,9 @@ enum class TestEnum5 : Enum { // Public signature: /TestEnum5.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6#valueOf#static(kotlin.String){} - // Public signature: /TestEnum6.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestEnum5#(){} + // Public signature: /TestEnum5.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -1085,9 +1010,9 @@ enum class TestEnum6 : Enum { // Public signature: /TestEnum6.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6#equals(kotlin.Any?){} - // Public signature: /TestEnum6.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestEnum6#(){} + // Public signature: /TestEnum6.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -1100,9 +1025,9 @@ enum class TestEnum6 : Enum { // Public signature: /TestEnum6.y.|-6745575372101973707[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6#toString(){} - // Public signature: /TestEnum6.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum6#(){} + // Public signature: /TestEnum6.y.|-7902422373892128922[0] + // Public signature debug description: (){} get // CHECK: @@ -1120,9 +1045,9 @@ enum class TestEnum6 : Enum { // Public signature: /TestEnum6.valueOf|4918214435711157814[0] // Public signature debug description: valueOf#static(kotlin.String){}TestEnum6 // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6{}name - // Public signature: /TestEnum6.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum6#valueOf#static(kotlin.String){} + // Public signature: /TestEnum6.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestEnum6 // CHECK JVM_IR: @@ -1130,29 +1055,19 @@ enum class TestEnum6 : Enum { // Public signature: /TestEnum6.values|-3500841970921663207[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6#(){} - // Public signature: /TestEnum6.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestEnum6#values#static(){} + // Public signature: /TestEnum6.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum6#clone(){}kotlin.Any - // Public signature: /TestEnum6.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6{}ordinal - // Public signature: /TestEnum6.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum6#compareTo(TestEnum6){}kotlin.Int // Public signature: /TestEnum6.compareTo|-8618169451141618664[0] // Public signature debug description: compareTo(TestEnum6){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum6#(){} - // Public signature: /TestEnum6.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestEnum6#compareTo(TestEnum6){} + // Public signature: /TestEnum6.compareTo|841707732263698352[0] + // Public signature debug description: compareTo(TestEnum6){} /* fake */ override operator fun compareTo(other: TestEnum6): Int // CHECK JVM_IR: @@ -1160,21 +1075,29 @@ enum class TestEnum6 : Enum { // Public signature: /TestEnum6.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: #f(){} - // Public signature: /f|5316533450599009716[0] - // Public signature debug description: f(){} + // Mangled name: TestEnum6#equals(kotlin.Any?){} + // Public signature: /TestEnum6.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: // Mangled name: TestEnum6#hashCode(){}kotlin.Int // Public signature: /TestEnum6.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: TestEnum6#hashCode(){} + // Public signature: /TestEnum6.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: // Mangled name: TestEnum6#toString(){}kotlin.String // Public signature: /TestEnum6.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: TestEnum6#toString(){} + // Public signature: /TestEnum6.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -1186,6 +1109,10 @@ enum class TestEnum6 : Enum { // Mangled name: TestEnum6##static(){}kotlin.enums.EnumEntries // Public signature: /TestEnum6.entries.|-6978845766362641693[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries + // CHECK JS_IR NATIVE: + // Mangled name: TestEnum6##static(){} + // Public signature: /TestEnum6.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -1197,6 +1124,10 @@ enum class TestEnum6 : Enum { // Mangled name: TestEnum6#(){}kotlin.String // Public signature: /TestEnum6.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: TestEnum6#(){} + // Public signature: /TestEnum6.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -1208,6 +1139,10 @@ enum class TestEnum6 : Enum { // Mangled name: TestEnum6#(){}kotlin.Int // Public signature: /TestEnum6.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: TestEnum6#(){} + // Public signature: /TestEnum6.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -1216,5 +1151,9 @@ enum class TestEnum6 : Enum { // Mangled name: #f(){}kotlin.Int // Public signature: /f|-2854658745315648608[0] // Public signature debug description: f(){}kotlin.Int +// CHECK JS_IR NATIVE: +// Mangled name: #f(){} +// Public signature: /f|5316533450599009716[0] +// Public signature debug description: f(){} fun f(): Int diff --git a/compiler/testData/ir/irText/classes/enumClassModality.fir.ir.txt b/compiler/testData/ir/irText/classes/enumClassModality.fir.ir.txt index 9190c94569c..a4fbc6f1cdb 100644 --- a/compiler/testData/ir/irText/classes/enumClassModality.fir.ir.txt +++ b/compiler/testData/ir/irText/classes/enumClassModality.fir.ir.txt @@ -18,10 +18,6 @@ FILE fqName: fileName:/enumClassModality.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestFinalEnum1> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>, other:.TestFinalEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -58,14 +54,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestFinalEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> CLASS ENUM_CLASS name:TestFinalEnum2 modality:FINAL visibility:public superTypes:[kotlin.Enum<.TestFinalEnum2>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestFinalEnum2 CONSTRUCTOR visibility:private <> (x:kotlin.Int) returnType:.TestFinalEnum2 [primary] @@ -98,10 +86,6 @@ FILE fqName: fileName:/enumClassModality.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestFinalEnum2> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>, other:.TestFinalEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -138,14 +122,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestFinalEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> CLASS ENUM_CLASS name:TestFinalEnum3 modality:FINAL visibility:public superTypes:[kotlin.Enum<.TestFinalEnum3>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestFinalEnum3 CONSTRUCTOR visibility:private <> () returnType:.TestFinalEnum3 [primary] @@ -168,10 +144,6 @@ FILE fqName: fileName:/enumClassModality.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestFinalEnum3> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>, other:.TestFinalEnum3) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -208,14 +180,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestFinalEnum3?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> CLASS ENUM_CLASS name:TestOpenEnum1 modality:OPEN visibility:public superTypes:[kotlin.Enum<.TestOpenEnum1>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestOpenEnum1 CONSTRUCTOR visibility:private <> () returnType:.TestOpenEnum1 [primary] @@ -239,10 +203,6 @@ FILE fqName: fileName:/enumClassModality.kt BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun toString (): kotlin.String declared in .TestOpenEnum1.X1' CONST String type=kotlin.String value="X1" - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestOpenEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>, other:.TestOpenEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestOpenEnum1): kotlin.Int declared in .TestOpenEnum1 @@ -275,14 +235,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestOpenEnum1 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum1?>? declared in .TestOpenEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestOpenEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.TestOpenEnum1> SYNTHETIC_BODY kind=ENUM_VALUES FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:.TestOpenEnum1 @@ -292,10 +244,6 @@ FILE fqName: fileName:/enumClassModality.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestOpenEnum1> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>, other:.TestOpenEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -332,14 +280,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> CLASS ENUM_CLASS name:TestOpenEnum2 modality:OPEN visibility:public superTypes:[kotlin.Enum<.TestOpenEnum2>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestOpenEnum2 CONSTRUCTOR visibility:private <> () returnType:.TestOpenEnum2 [primary] @@ -361,10 +301,6 @@ FILE fqName: fileName:/enumClassModality.kt public open fun foo (): kotlin.Unit declared in .TestOpenEnum2 $this: VALUE_PARAMETER name: type:.TestOpenEnum2.X1 BLOCK_BODY - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestOpenEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>, other:.TestOpenEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestOpenEnum2): kotlin.Int declared in .TestOpenEnum2 @@ -401,14 +337,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestOpenEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum2?>? declared in .TestOpenEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestOpenEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN name:foo visibility:public modality:OPEN <> ($this:.TestOpenEnum2) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.TestOpenEnum2 BLOCK_BODY @@ -421,10 +349,6 @@ FILE fqName: fileName:/enumClassModality.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestOpenEnum2> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>, other:.TestOpenEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -461,14 +385,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> CLASS ENUM_CLASS name:TestAbstractEnum1 modality:ABSTRACT visibility:public superTypes:[kotlin.Enum<.TestAbstractEnum1>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestAbstractEnum1 CONSTRUCTOR visibility:private <> () returnType:.TestAbstractEnum1 [primary] @@ -490,10 +406,6 @@ FILE fqName: fileName:/enumClassModality.kt public abstract fun foo (): kotlin.Unit declared in .TestAbstractEnum1 $this: VALUE_PARAMETER name: type:.TestAbstractEnum1.X1 BLOCK_BODY - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestAbstractEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>, other:.TestAbstractEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestAbstractEnum1): kotlin.Int declared in .TestAbstractEnum1 @@ -530,14 +442,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestAbstractEnum1 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum1?>? declared in .TestAbstractEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestAbstractEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN name:foo visibility:public modality:ABSTRACT <> ($this:.TestAbstractEnum1) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.TestAbstractEnum1 FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.TestAbstractEnum1> @@ -549,10 +453,6 @@ FILE fqName: fileName:/enumClassModality.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestAbstractEnum1> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>, other:.TestAbstractEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -589,14 +489,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> CLASS INTERFACE name:IFoo modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.IFoo FUN name:foo visibility:public modality:ABSTRACT <> ($this:.IFoo) returnType:kotlin.Unit @@ -648,10 +540,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public open fun toString (): kotlin.String declared in .TestAbstractEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestAbstractEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>, other:.TestAbstractEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestAbstractEnum2): kotlin.Int declared in .TestAbstractEnum2 @@ -675,14 +563,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestAbstractEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum2?>? declared in .TestAbstractEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestAbstractEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.TestAbstractEnum2> SYNTHETIC_BODY kind=ENUM_VALUES FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:.TestAbstractEnum2 @@ -709,10 +589,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>, other:.TestAbstractEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -736,11 +612,3 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> diff --git a/compiler/testData/ir/irText/classes/enumClassModality.ir.txt b/compiler/testData/ir/irText/classes/enumClassModality.ir.txt index 77df7712915..f054cf8ba5f 100644 --- a/compiler/testData/ir/irText/classes/enumClassModality.ir.txt +++ b/compiler/testData/ir/irText/classes/enumClassModality.ir.txt @@ -27,10 +27,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>, other:.TestFinalEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -41,14 +37,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestFinalEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -107,10 +95,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>, other:.TestFinalEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -121,14 +105,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestFinalEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -177,10 +153,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>, other:.TestFinalEnum3) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -191,14 +163,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestFinalEnum3?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestFinalEnum3> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestFinalEnum3>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -258,10 +222,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestOpenEnum1 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestOpenEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>, other:.TestOpenEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestOpenEnum1): kotlin.Int declared in .TestOpenEnum1 @@ -272,14 +232,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestOpenEnum1 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestOpenEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum1?>? declared in .TestOpenEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestOpenEnum1 @@ -302,10 +254,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>, other:.TestOpenEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -316,14 +264,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -381,10 +321,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestOpenEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestOpenEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>, other:.TestOpenEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestOpenEnum2): kotlin.Int declared in .TestOpenEnum2 @@ -395,14 +331,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestOpenEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestOpenEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum2?>? declared in .TestOpenEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestOpenEnum2 @@ -432,10 +360,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>, other:.TestOpenEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -446,14 +370,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestOpenEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestOpenEnum2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestOpenEnum2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -511,10 +427,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestAbstractEnum1 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestAbstractEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>, other:.TestAbstractEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestAbstractEnum1): kotlin.Int declared in .TestAbstractEnum1 @@ -525,14 +437,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestAbstractEnum1 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestAbstractEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum1?>? declared in .TestAbstractEnum1 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestAbstractEnum1 @@ -561,10 +465,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>, other:.TestAbstractEnum1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -575,14 +475,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -657,10 +549,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in .TestAbstractEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestAbstractEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>, other:.TestAbstractEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestAbstractEnum2): kotlin.Int declared in .TestAbstractEnum2 @@ -671,14 +559,6 @@ FILE fqName: fileName:/enumClassModality.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestAbstractEnum2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestAbstractEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum2?>? declared in .TestAbstractEnum2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestAbstractEnum2 @@ -705,10 +585,6 @@ FILE fqName: fileName:/enumClassModality.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>, other:.TestAbstractEnum2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -720,14 +596,6 @@ FILE fqName: fileName:/enumClassModality.kt public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .IFoo $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestAbstractEnum2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestAbstractEnum2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestAbstractEnum2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/classes/enumClassModality.kt b/compiler/testData/ir/irText/classes/enumClassModality.kt index 066bb71e5c7..7096f0638fd 100644 --- a/compiler/testData/ir/irText/classes/enumClassModality.kt +++ b/compiler/testData/ir/irText/classes/enumClassModality.kt @@ -1,6 +1,3 @@ -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize (K1), getDeclaringClass (K1), clone (K2) - enum class TestFinalEnum1 { X1 } diff --git a/compiler/testData/ir/irText/classes/enumClassModality.sig.kt.txt b/compiler/testData/ir/irText/classes/enumClassModality.sig.kt.txt index bca800233c0..388a89a6254 100644 --- a/compiler/testData/ir/irText/classes/enumClassModality.sig.kt.txt +++ b/compiler/testData/ir/irText/classes/enumClassModality.sig.kt.txt @@ -21,24 +21,14 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.X1..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestAbstractEnum1.X1#clone(){}kotlin.Any - // Public signature: /TestAbstractEnum1.X1..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1.X1#compareTo(TestAbstractEnum1){} - // Public signature: /TestAbstractEnum1.X1..compareTo|745390484677491369[0] - // Public signature debug description: compareTo(TestAbstractEnum1){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestAbstractEnum1.X1#compareTo(TestAbstractEnum1){}kotlin.Int // Public signature: /TestAbstractEnum1.X1..compareTo|4568850831400093628[0] // Public signature debug description: compareTo(TestAbstractEnum1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1.X1#equals(kotlin.Any?){} - // Public signature: /TestAbstractEnum1.X1..equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestAbstractEnum1.X1#compareTo(TestAbstractEnum1){} + // Public signature: /TestAbstractEnum1.X1..compareTo|745390484677491369[0] + // Public signature debug description: compareTo(TestAbstractEnum1){} /* fake */ override operator fun compareTo(other: TestAbstractEnum1): Int // CHECK JVM_IR: @@ -46,9 +36,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.X1..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1.X1#hashCode(){} - // Public signature: /TestAbstractEnum1.X1..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestAbstractEnum1.X1#equals(kotlin.Any?){} + // Public signature: /TestAbstractEnum1.X1..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -56,9 +46,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.X1..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1.X1#toString(){} - // Public signature: /TestAbstractEnum1.X1..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestAbstractEnum1.X1#hashCode(){} + // Public signature: /TestAbstractEnum1.X1..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -66,9 +56,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.X1..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1.X1#foo(){} - // Public signature: /TestAbstractEnum1.X1..foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestAbstractEnum1.X1#toString(){} + // Public signature: /TestAbstractEnum1.X1..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -87,9 +77,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.X1..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1.X1{}ordinal - // Public signature: /TestAbstractEnum1.X1..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestAbstractEnum1.X1#(){} + // Public signature: /TestAbstractEnum1.X1..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -102,9 +92,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.X1..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#valueOf#static(kotlin.String){} - // Public signature: /TestAbstractEnum1.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestAbstractEnum1.X1#(){} + // Public signature: /TestAbstractEnum1.X1..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -114,9 +104,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.valueOf|1031102409939396944[0] // Public signature debug description: valueOf#static(kotlin.String){}TestAbstractEnum1 // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#values#static(){} - // Public signature: /TestAbstractEnum1.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: TestAbstractEnum1#valueOf#static(kotlin.String){} + // Public signature: /TestAbstractEnum1.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestAbstractEnum1 // CHECK JVM_IR: @@ -124,29 +114,19 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.values|2421071688454673326[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#compareTo(TestAbstractEnum1){} - // Public signature: /TestAbstractEnum1.compareTo|745390484677491369[0] - // Public signature debug description: compareTo(TestAbstractEnum1){} + // Mangled name: TestAbstractEnum1#values#static(){} + // Public signature: /TestAbstractEnum1.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestAbstractEnum1#clone(){}kotlin.Any - // Public signature: /TestAbstractEnum1.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#equals(kotlin.Any?){} - // Public signature: /TestAbstractEnum1.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestAbstractEnum1#compareTo(TestAbstractEnum1){}kotlin.Int // Public signature: /TestAbstractEnum1.compareTo|4568850831400093628[0] // Public signature debug description: compareTo(TestAbstractEnum1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#hashCode(){} - // Public signature: /TestAbstractEnum1.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestAbstractEnum1#compareTo(TestAbstractEnum1){} + // Public signature: /TestAbstractEnum1.compareTo|745390484677491369[0] + // Public signature debug description: compareTo(TestAbstractEnum1){} /* fake */ override operator fun compareTo(other: TestAbstractEnum1): Int // CHECK JVM_IR: @@ -154,9 +134,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#toString(){} - // Public signature: /TestAbstractEnum1.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestAbstractEnum1#equals(kotlin.Any?){} + // Public signature: /TestAbstractEnum1.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -164,9 +144,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#foo(){} - // Public signature: /TestAbstractEnum1.foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestAbstractEnum1#hashCode(){} + // Public signature: /TestAbstractEnum1.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -174,9 +154,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#static{}entries - // Public signature: /TestAbstractEnum1.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestAbstractEnum1#toString(){} + // Public signature: /TestAbstractEnum1.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -195,9 +175,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.entries.|-62644859580206762[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#(){} - // Public signature: /TestAbstractEnum1.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum1##static(){} + // Public signature: /TestAbstractEnum1.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -210,9 +190,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum1#(){} - // Public signature: /TestAbstractEnum1.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum1#(){} + // Public signature: /TestAbstractEnum1.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -225,9 +205,9 @@ abstract enum class TestAbstractEnum1 : Enum { // Public signature: /TestAbstractEnum1.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#(){} - // Public signature: /TestAbstractEnum2.|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum1#(){} + // Public signature: /TestAbstractEnum1.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -255,24 +235,14 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.X1..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestAbstractEnum2.X1#clone(){}kotlin.Any - // Public signature: /TestAbstractEnum2.X1..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2.X1#hashCode(){} - // Public signature: /TestAbstractEnum2.X1..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestAbstractEnum2.X1#compareTo(TestAbstractEnum2){}kotlin.Int // Public signature: /TestAbstractEnum2.X1..compareTo|1400147308358154853[0] // Public signature debug description: compareTo(TestAbstractEnum2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2.X1#toString(){} - // Public signature: /TestAbstractEnum2.X1..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestAbstractEnum2.X1#compareTo(TestAbstractEnum2){} + // Public signature: /TestAbstractEnum2.X1..compareTo|-5741102265556364706[0] + // Public signature debug description: compareTo(TestAbstractEnum2){} /* fake */ override operator fun compareTo(other: TestAbstractEnum2): Int // CHECK JVM_IR: @@ -280,9 +250,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.X1..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2.X1#foo(){} - // Public signature: /TestAbstractEnum2.X1..foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestAbstractEnum2.X1#equals(kotlin.Any?){} + // Public signature: /TestAbstractEnum2.X1..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -290,9 +260,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.X1..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2.X1{}name - // Public signature: /TestAbstractEnum2.X1..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestAbstractEnum2.X1#hashCode(){} + // Public signature: /TestAbstractEnum2.X1..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -300,9 +270,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.X1..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2.X1#(){} - // Public signature: /TestAbstractEnum2.X1..name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum2.X1#toString(){} + // Public signature: /TestAbstractEnum2.X1..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -321,9 +291,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.X1..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#valueOf#static(kotlin.String){} - // Public signature: /TestAbstractEnum2.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestAbstractEnum2.X1#(){} + // Public signature: /TestAbstractEnum2.X1..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -336,9 +306,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.X1..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#compareTo(TestAbstractEnum2){} - // Public signature: /TestAbstractEnum2.compareTo|-5741102265556364706[0] - // Public signature debug description: compareTo(TestAbstractEnum2){} + // Mangled name: TestAbstractEnum2.X1#(){} + // Public signature: /TestAbstractEnum2.X1..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -348,9 +318,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.valueOf|-3718310282234049027[0] // Public signature debug description: valueOf#static(kotlin.String){}TestAbstractEnum2 // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#equals(kotlin.Any?){} - // Public signature: /TestAbstractEnum2.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestAbstractEnum2#valueOf#static(kotlin.String){} + // Public signature: /TestAbstractEnum2.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestAbstractEnum2 // CHECK JVM_IR: @@ -358,29 +328,19 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.values|-1014141399495495627[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#foo(){} - // Public signature: /TestAbstractEnum2.foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestAbstractEnum2#values#static(){} + // Public signature: /TestAbstractEnum2.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestAbstractEnum2#clone(){}kotlin.Any - // Public signature: /TestAbstractEnum2.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#hashCode(){} - // Public signature: /TestAbstractEnum2.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestAbstractEnum2#compareTo(TestAbstractEnum2){}kotlin.Int // Public signature: /TestAbstractEnum2.compareTo|1400147308358154853[0] // Public signature debug description: compareTo(TestAbstractEnum2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#toString(){} - // Public signature: /TestAbstractEnum2.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestAbstractEnum2#compareTo(TestAbstractEnum2){} + // Public signature: /TestAbstractEnum2.compareTo|-5741102265556364706[0] + // Public signature debug description: compareTo(TestAbstractEnum2){} /* fake */ override operator fun compareTo(other: TestAbstractEnum2): Int // CHECK JVM_IR: @@ -388,9 +348,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#static{}entries - // Public signature: /TestAbstractEnum2.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestAbstractEnum2#equals(kotlin.Any?){} + // Public signature: /TestAbstractEnum2.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK: @@ -404,9 +364,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2{}name - // Public signature: /TestAbstractEnum2.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestAbstractEnum2#hashCode(){} + // Public signature: /TestAbstractEnum2.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -414,9 +374,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#(){} - // Public signature: /TestAbstractEnum2.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum2#toString(){} + // Public signature: /TestAbstractEnum2.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -429,9 +389,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.entries.|8627121999159520047[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestAbstractEnum2#(){} - // Public signature: /TestAbstractEnum2.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum2##static(){} + // Public signature: /TestAbstractEnum2.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -444,9 +404,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1#(){} - // Public signature: /TestFinalEnum1.|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestAbstractEnum2#(){} + // Public signature: /TestAbstractEnum2.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -459,9 +419,9 @@ abstract enum class TestAbstractEnum2 : Enum, IFoo { // Public signature: /TestAbstractEnum2.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1#valueOf#static(kotlin.String){} - // Public signature: /TestFinalEnum1.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestAbstractEnum2#(){} + // Public signature: /TestAbstractEnum2.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -485,9 +445,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.valueOf|-6956480038617460042[0] // Public signature debug description: valueOf#static(kotlin.String){}TestFinalEnum1 // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1#hashCode(){} - // Public signature: /TestFinalEnum1.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestFinalEnum1#valueOf#static(kotlin.String){} + // Public signature: /TestFinalEnum1.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestFinalEnum1 // CHECK JVM_IR: @@ -495,29 +455,19 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.values|-2181276672467921798[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1#toString(){} - // Public signature: /TestFinalEnum1.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestFinalEnum1#values#static(){} + // Public signature: /TestFinalEnum1.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestFinalEnum1#clone(){}kotlin.Any - // Public signature: /TestFinalEnum1.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1#static{}entries - // Public signature: /TestFinalEnum1.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestFinalEnum1#compareTo(TestFinalEnum1){}kotlin.Int // Public signature: /TestFinalEnum1.compareTo|3720004550586571290[0] // Public signature debug description: compareTo(TestFinalEnum1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1##static(){} - // Public signature: /TestFinalEnum1.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: TestFinalEnum1#compareTo(TestFinalEnum1){} + // Public signature: /TestFinalEnum1.compareTo|-7840869388790014583[0] + // Public signature debug description: compareTo(TestFinalEnum1){} /* fake */ override operator fun compareTo(other: TestFinalEnum1): Int // CHECK JVM_IR: @@ -525,9 +475,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1{}name - // Public signature: /TestFinalEnum1.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestFinalEnum1#equals(kotlin.Any?){} + // Public signature: /TestFinalEnum1.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -535,9 +485,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1#(){} - // Public signature: /TestFinalEnum1.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum1#hashCode(){} + // Public signature: /TestFinalEnum1.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -545,9 +495,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum1{}ordinal - // Public signature: /TestFinalEnum1.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestFinalEnum1#toString(){} + // Public signature: /TestFinalEnum1.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -560,8 +510,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.entries.|7793286316162597646[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2 - // Public signature: /TestFinalEnum2|null[0] + // Mangled name: TestFinalEnum1##static(){} + // Public signature: /TestFinalEnum1.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -574,9 +525,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2#(){} - // Public signature: /TestFinalEnum2.x.|1482705010654679335[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum1#(){} + // Public signature: /TestFinalEnum1.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -589,8 +540,9 @@ enum class TestFinalEnum1 : Enum { // Public signature: /TestFinalEnum1.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2.X1 - // Public signature: /TestFinalEnum2.X1|null[0] + // Mangled name: TestFinalEnum1#(){} + // Public signature: /TestFinalEnum1.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -609,9 +561,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2#compareTo(TestFinalEnum2){} - // Public signature: /TestFinalEnum2.compareTo|-1005502274053294622[0] - // Public signature debug description: compareTo(TestFinalEnum2){} + // Mangled name: TestFinalEnum2#(){} + // Public signature: /TestFinalEnum2.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -629,9 +581,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.valueOf|-780401890225518867[0] // Public signature debug description: valueOf#static(kotlin.String){}TestFinalEnum2 // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2#toString(){} - // Public signature: /TestFinalEnum2.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestFinalEnum2#valueOf#static(kotlin.String){} + // Public signature: /TestFinalEnum2.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestFinalEnum2 // CHECK JVM_IR: @@ -639,29 +591,19 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.values|2453561414820060883[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2#static{}entries - // Public signature: /TestFinalEnum2.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestFinalEnum2#values#static(){} + // Public signature: /TestFinalEnum2.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestFinalEnum2#clone(){}kotlin.Any - // Public signature: /TestFinalEnum2.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2##static(){} - // Public signature: /TestFinalEnum2.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestFinalEnum2#compareTo(TestFinalEnum2){}kotlin.Int // Public signature: /TestFinalEnum2.compareTo|5381880420496293798[0] // Public signature debug description: compareTo(TestFinalEnum2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2{}name - // Public signature: /TestFinalEnum2.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestFinalEnum2#compareTo(TestFinalEnum2){} + // Public signature: /TestFinalEnum2.compareTo|-1005502274053294622[0] + // Public signature debug description: compareTo(TestFinalEnum2){} /* fake */ override operator fun compareTo(other: TestFinalEnum2): Int // CHECK JVM_IR: @@ -669,9 +611,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2#(){} - // Public signature: /TestFinalEnum2.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum2#equals(kotlin.Any?){} + // Public signature: /TestFinalEnum2.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -679,9 +621,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2{}ordinal - // Public signature: /TestFinalEnum2.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestFinalEnum2#hashCode(){} + // Public signature: /TestFinalEnum2.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -689,9 +631,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum2#(){} - // Public signature: /TestFinalEnum2.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum2#toString(){} + // Public signature: /TestFinalEnum2.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -704,9 +646,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.entries.|7934736600478259880[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#(){} - // Public signature: /TestFinalEnum3.|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum2##static(){} + // Public signature: /TestFinalEnum2.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -719,9 +661,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#valueOf#static(kotlin.String){} - // Public signature: /TestFinalEnum3.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestFinalEnum2#(){} + // Public signature: /TestFinalEnum2.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -734,9 +676,9 @@ enum class TestFinalEnum2 : Enum { // Public signature: /TestFinalEnum2.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#compareTo(TestFinalEnum3){} - // Public signature: /TestFinalEnum3.compareTo|6918020062090955749[0] - // Public signature debug description: compareTo(TestFinalEnum3){} + // Mangled name: TestFinalEnum2#(){} + // Public signature: /TestFinalEnum2.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -760,9 +702,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.valueOf|-7660458486476045816[0] // Public signature debug description: valueOf#static(kotlin.String){}TestFinalEnum3 // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#doStuff(){} - // Public signature: /TestFinalEnum3.doStuff|7141990572475111133[0] - // Public signature debug description: doStuff(){} + // Mangled name: TestFinalEnum3#valueOf#static(kotlin.String){} + // Public signature: /TestFinalEnum3.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestFinalEnum3 // CHECK JVM_IR: @@ -770,29 +712,19 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.values|4010199590602977121[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#static{}entries - // Public signature: /TestFinalEnum3.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestFinalEnum3#values#static(){} + // Public signature: /TestFinalEnum3.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestFinalEnum3#clone(){}kotlin.Any - // Public signature: /TestFinalEnum3.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3##static(){} - // Public signature: /TestFinalEnum3.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestFinalEnum3#compareTo(TestFinalEnum3){}kotlin.Int // Public signature: /TestFinalEnum3.compareTo|3973328039045428634[0] // Public signature debug description: compareTo(TestFinalEnum3){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3{}name - // Public signature: /TestFinalEnum3.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestFinalEnum3#compareTo(TestFinalEnum3){} + // Public signature: /TestFinalEnum3.compareTo|6918020062090955749[0] + // Public signature debug description: compareTo(TestFinalEnum3){} /* fake */ override operator fun compareTo(other: TestFinalEnum3): Int // CHECK JVM_IR: @@ -800,9 +732,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#(){} - // Public signature: /TestFinalEnum3.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum3#equals(kotlin.Any?){} + // Public signature: /TestFinalEnum3.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -810,9 +742,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3{}ordinal - // Public signature: /TestFinalEnum3.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestFinalEnum3#hashCode(){} + // Public signature: /TestFinalEnum3.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -820,9 +752,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestFinalEnum3#(){} - // Public signature: /TestFinalEnum3.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum3#toString(){} + // Public signature: /TestFinalEnum3.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -841,8 +773,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.entries.|-3503795261994851998[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1.X1 - // Public signature: /TestOpenEnum1.X1|null[0] + // Mangled name: TestFinalEnum3##static(){} + // Public signature: /TestFinalEnum3.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -855,9 +788,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1.X1#(){} - // Public signature: /TestOpenEnum1.X1..|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestFinalEnum3#(){} + // Public signature: /TestFinalEnum3.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -870,9 +803,9 @@ enum class TestFinalEnum3 : Enum { // Public signature: /TestFinalEnum3.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1.X1#equals(kotlin.Any?){} - // Public signature: /TestOpenEnum1.X1..equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestFinalEnum3#(){} + // Public signature: /TestFinalEnum3.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -900,24 +833,14 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.X1..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestOpenEnum1.X1#clone(){}kotlin.Any - // Public signature: /TestOpenEnum1.X1..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1.X1#(){} - // Public signature: /TestOpenEnum1.X1..ordinal.|8409904226035914023[0] - // Public signature debug description: (){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestOpenEnum1.X1#compareTo(TestOpenEnum1){}kotlin.Int // Public signature: /TestOpenEnum1.X1..compareTo|5969408945777389066[0] // Public signature debug description: compareTo(TestOpenEnum1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#valueOf#static(kotlin.String){} - // Public signature: /TestOpenEnum1.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: TestOpenEnum1.X1#compareTo(TestOpenEnum1){} + // Public signature: /TestOpenEnum1.X1..compareTo|1125042758162309284[0] + // Public signature debug description: compareTo(TestOpenEnum1){} /* fake */ override operator fun compareTo(other: TestOpenEnum1): Int // CHECK JVM_IR: @@ -925,9 +848,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.X1..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#values#static(){} - // Public signature: /TestOpenEnum1.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: TestOpenEnum1.X1#equals(kotlin.Any?){} + // Public signature: /TestOpenEnum1.X1..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -935,9 +858,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.X1..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#compareTo(TestOpenEnum1){} - // Public signature: /TestOpenEnum1.compareTo|1125042758162309284[0] - // Public signature debug description: compareTo(TestOpenEnum1){} + // Mangled name: TestOpenEnum1.X1#hashCode(){} + // Public signature: /TestOpenEnum1.X1..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -945,9 +868,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.X1..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#equals(kotlin.Any?){} - // Public signature: /TestOpenEnum1.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestOpenEnum1.X1#toString(){} + // Public signature: /TestOpenEnum1.X1..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} override fun toString(): String // CHECK: @@ -960,9 +883,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.X1..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#toString(){} - // Public signature: /TestOpenEnum1.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestOpenEnum1.X1#(){} + // Public signature: /TestOpenEnum1.X1..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -975,9 +898,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.X1..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1##static(){} - // Public signature: /TestOpenEnum1.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: TestOpenEnum1.X1#(){} + // Public signature: /TestOpenEnum1.X1..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -987,9 +910,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.valueOf|-3895494988240235128[0] // Public signature debug description: valueOf#static(kotlin.String){}TestOpenEnum1 // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1{}name - // Public signature: /TestOpenEnum1.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestOpenEnum1#valueOf#static(kotlin.String){} + // Public signature: /TestOpenEnum1.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestOpenEnum1 // CHECK JVM_IR: @@ -997,29 +920,19 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.values|3800638804003217382[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#(){} - // Public signature: /TestOpenEnum1.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestOpenEnum1#values#static(){} + // Public signature: /TestOpenEnum1.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestOpenEnum1#clone(){}kotlin.Any - // Public signature: /TestOpenEnum1.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1{}ordinal - // Public signature: /TestOpenEnum1.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestOpenEnum1#compareTo(TestOpenEnum1){}kotlin.Int // Public signature: /TestOpenEnum1.compareTo|5969408945777389066[0] // Public signature debug description: compareTo(TestOpenEnum1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum1#(){} - // Public signature: /TestOpenEnum1.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: TestOpenEnum1#compareTo(TestOpenEnum1){} + // Public signature: /TestOpenEnum1.compareTo|1125042758162309284[0] + // Public signature debug description: compareTo(TestOpenEnum1){} /* fake */ override operator fun compareTo(other: TestOpenEnum1): Int // CHECK JVM_IR: @@ -1027,8 +940,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2 - // Public signature: /TestOpenEnum2|null[0] + // Mangled name: TestOpenEnum1#equals(kotlin.Any?){} + // Public signature: /TestOpenEnum1.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -1036,9 +950,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#(){} - // Public signature: /TestOpenEnum2.|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestOpenEnum1#hashCode(){} + // Public signature: /TestOpenEnum1.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -1046,8 +960,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2.X1 - // Public signature: /TestOpenEnum2.X1|null[0] + // Mangled name: TestOpenEnum1#toString(){} + // Public signature: /TestOpenEnum1.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -1060,9 +975,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.entries.|-4208283468290053503[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2.X1#(){} - // Public signature: /TestOpenEnum2.X1..|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: TestOpenEnum1##static(){} + // Public signature: /TestOpenEnum1.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -1075,9 +990,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2.X1#equals(kotlin.Any?){} - // Public signature: /TestOpenEnum2.X1..equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestOpenEnum1#(){} + // Public signature: /TestOpenEnum1.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -1090,9 +1005,9 @@ open enum class TestOpenEnum1 : Enum { // Public signature: /TestOpenEnum1.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2.X1#toString(){} - // Public signature: /TestOpenEnum2.X1..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestOpenEnum1#(){} + // Public signature: /TestOpenEnum1.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -1120,24 +1035,14 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.X1..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: TestOpenEnum2.X1#clone(){}kotlin.Any - // Public signature: /TestOpenEnum2.X1..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#valueOf#static(kotlin.String){} - // Public signature: /TestOpenEnum2.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestOpenEnum2.X1#compareTo(TestOpenEnum2){}kotlin.Int // Public signature: /TestOpenEnum2.X1..compareTo|-5309775767017986668[0] // Public signature debug description: compareTo(TestOpenEnum2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#values#static(){} - // Public signature: /TestOpenEnum2.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: TestOpenEnum2.X1#compareTo(TestOpenEnum2){} + // Public signature: /TestOpenEnum2.X1..compareTo|3305950527143248830[0] + // Public signature debug description: compareTo(TestOpenEnum2){} /* fake */ override operator fun compareTo(other: TestOpenEnum2): Int // CHECK JVM_IR: @@ -1145,9 +1050,9 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.X1..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#compareTo(TestOpenEnum2){} - // Public signature: /TestOpenEnum2.compareTo|3305950527143248830[0] - // Public signature debug description: compareTo(TestOpenEnum2){} + // Mangled name: TestOpenEnum2.X1#equals(kotlin.Any?){} + // Public signature: /TestOpenEnum2.X1..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -1155,9 +1060,9 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.X1..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#equals(kotlin.Any?){} - // Public signature: /TestOpenEnum2.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestOpenEnum2.X1#hashCode(){} + // Public signature: /TestOpenEnum2.X1..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -1165,9 +1070,9 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.X1..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#hashCode(){} - // Public signature: /TestOpenEnum2.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestOpenEnum2.X1#toString(){} + // Public signature: /TestOpenEnum2.X1..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -1186,9 +1091,9 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.X1..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#static{}entries - // Public signature: /TestOpenEnum2.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestOpenEnum2.X1#(){} + // Public signature: /TestOpenEnum2.X1..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -1201,9 +1106,9 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.X1..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2{}name - // Public signature: /TestOpenEnum2.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestOpenEnum2.X1#(){} + // Public signature: /TestOpenEnum2.X1..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -1213,9 +1118,9 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.valueOf|-6277423759061924196[0] // Public signature debug description: valueOf#static(kotlin.String){}TestOpenEnum2 // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#(){} - // Public signature: /TestOpenEnum2.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: TestOpenEnum2#valueOf#static(kotlin.String){} + // Public signature: /TestOpenEnum2.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): TestOpenEnum2 // CHECK JVM_IR: @@ -1223,28 +1128,19 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.values|8731365896810749322[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2{}ordinal - // Public signature: /TestOpenEnum2.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestOpenEnum2#values#static(){} + // Public signature: /TestOpenEnum2.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestOpenEnum2#clone(){}kotlin.Any - // Public signature: /TestOpenEnum2.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestOpenEnum2#(){} - // Public signature: /TestOpenEnum2.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestOpenEnum2#compareTo(TestOpenEnum2){}kotlin.Int // Public signature: /TestOpenEnum2.compareTo|-5309775767017986668[0] // Public signature debug description: compareTo(TestOpenEnum2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: IFoo - // Public signature: /IFoo|null[0] + // Mangled name: TestOpenEnum2#compareTo(TestOpenEnum2){} + // Public signature: /TestOpenEnum2.compareTo|3305950527143248830[0] + // Public signature debug description: compareTo(TestOpenEnum2){} /* fake */ override operator fun compareTo(other: TestOpenEnum2): Int // CHECK JVM_IR: @@ -1252,21 +1148,29 @@ open enum class TestOpenEnum2 : Enum { // Public signature: /TestOpenEnum2.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: IFoo#foo(){} - // Public signature: /IFoo.foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: TestOpenEnum2#equals(kotlin.Any?){} + // Public signature: /TestOpenEnum2.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: // Mangled name: TestOpenEnum2#hashCode(){}kotlin.Int // Public signature: /TestOpenEnum2.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: TestOpenEnum2#hashCode(){} + // Public signature: /TestOpenEnum2.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: // Mangled name: TestOpenEnum2#toString(){}kotlin.String // Public signature: /TestOpenEnum2.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: TestOpenEnum2#toString(){} + // Public signature: /TestOpenEnum2.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -1284,6 +1188,10 @@ open enum class TestOpenEnum2 : Enum { // Mangled name: TestOpenEnum2##static(){}kotlin.enums.EnumEntries // Public signature: /TestOpenEnum2.entries.|7144795131978512560[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries + // CHECK JS_IR NATIVE: + // Mangled name: TestOpenEnum2##static(){} + // Public signature: /TestOpenEnum2.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -1295,6 +1203,10 @@ open enum class TestOpenEnum2 : Enum { // Mangled name: TestOpenEnum2#(){}kotlin.String // Public signature: /TestOpenEnum2.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: TestOpenEnum2#(){} + // Public signature: /TestOpenEnum2.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -1306,6 +1218,10 @@ open enum class TestOpenEnum2 : Enum { // Mangled name: TestOpenEnum2#(){}kotlin.Int // Public signature: /TestOpenEnum2.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: TestOpenEnum2#(){} + // Public signature: /TestOpenEnum2.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/classes/enumEntries.fir.ir.txt b/compiler/testData/ir/irText/classes/enumEntries.fir.ir.txt index 2620cc74c91..da4243f21e7 100644 --- a/compiler/testData/ir/irText/classes/enumEntries.fir.ir.txt +++ b/compiler/testData/ir/irText/classes/enumEntries.fir.ir.txt @@ -21,10 +21,6 @@ FILE fqName: fileName:/enumEntries.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.MyEnum> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -61,14 +57,6 @@ FILE fqName: fileName:/enumEntries.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.MyEnum> annotations: OptIn(markerClass = [CLASS_REFERENCE 'CLASS IR_EXTERNAL_DECLARATION_STUB ANNOTATION_CLASS name:ExperimentalStdlibApi modality:OPEN visibility:public superTypes:[kotlin.Annotation]' type=kotlin.reflect.KClass]) diff --git a/compiler/testData/ir/irText/classes/enumEntries.ir.txt b/compiler/testData/ir/irText/classes/enumEntries.ir.txt index c86973c2bb6..013d4e33fec 100644 --- a/compiler/testData/ir/irText/classes/enumEntries.ir.txt +++ b/compiler/testData/ir/irText/classes/enumEntries.ir.txt @@ -30,10 +30,6 @@ FILE fqName: fileName:/enumEntries.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -44,14 +40,6 @@ FILE fqName: fileName:/enumEntries.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/classes/enumEntries.sig.kt.txt b/compiler/testData/ir/irText/classes/enumEntries.sig.kt.txt index 9c1e4a13f73..60550cdd7aa 100644 --- a/compiler/testData/ir/irText/classes/enumEntries.sig.kt.txt +++ b/compiler/testData/ir/irText/classes/enumEntries.sig.kt.txt @@ -29,12 +29,6 @@ enum class MyEnum : Enum { // Public signature debug description: values#static(){}kotlin.Array fun values(): Array - // CHECK JVM_IR: - // Mangled name: MyEnum#clone(){}kotlin.Any - // Public signature: /MyEnum.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: MyEnum#compareTo(MyEnum){}kotlin.Int // Public signature: /MyEnum.compareTo|2015858924903177055[0] diff --git a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.fir.ir.txt b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.fir.ir.txt index b276fc120f8..2b7b1a15142 100644 --- a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.fir.ir.txt +++ b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.fir.ir.txt @@ -54,10 +54,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt public final fun (: kotlin.String): kotlin.Unit declared in .A $this: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name: index:0 type:kotlin.String - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .A - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>, other:.A) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .A): kotlin.Int declared in .A @@ -94,14 +90,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt overridden: public final fun (): kotlin.Int declared in .A $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? declared in .A - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .A - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> ENUM_ENTRY name:Z init: EXPRESSION_BODY ENUM_CONSTRUCTOR_CALL 'private constructor (x: kotlin.Int) declared in .A' @@ -196,10 +184,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.A> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>, other:.A) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -236,11 +220,3 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> diff --git a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.ir.txt b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.ir.txt index c51c7dfd547..eed8ceb1c4c 100644 --- a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.ir.txt +++ b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.ir.txt @@ -73,10 +73,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt overridden: public final fun (): kotlin.Int declared in .A $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .A - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>, other:.A) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .A): kotlin.Int declared in .A @@ -87,14 +83,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .A $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .A - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? declared in .A - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .A @@ -206,10 +194,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>, other:.A) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -220,14 +204,6 @@ FILE fqName: fileName:/enumWithMultipleCtors.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.kt b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.kt index 964de71b13c..d8d225effde 100644 --- a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.kt +++ b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.kt @@ -1,6 +1,3 @@ -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize (K1), getDeclaringClass (K1), clone (K2) - enum class A { X("asd"), Y() { diff --git a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.sig.kt.txt b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.sig.kt.txt index 417f00e2ea0..c50f77c1fd3 100644 --- a/compiler/testData/ir/irText/classes/enumWithMultipleCtors.sig.kt.txt +++ b/compiler/testData/ir/irText/classes/enumWithMultipleCtors.sig.kt.txt @@ -86,24 +86,14 @@ open enum class A : Enum { // Public signature: /A.Y..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: A.Y#clone(){}kotlin.Any - // Public signature: /A.Y..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: A.Y#compareTo(A){} - // Public signature: /A.Y..compareTo|5303387127644845713[0] - // Public signature debug description: compareTo(A){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: A.Y#compareTo(A){}kotlin.Int // Public signature: /A.Y..compareTo|-315052537630360750[0] // Public signature debug description: compareTo(A){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A.Y#equals(kotlin.Any?){} - // Public signature: /A.Y..equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: A.Y#compareTo(A){} + // Public signature: /A.Y..compareTo|5303387127644845713[0] + // Public signature debug description: compareTo(A){} /* fake */ override operator fun compareTo(other: A): Int // CHECK JVM_IR: @@ -111,9 +101,9 @@ open enum class A : Enum { // Public signature: /A.Y..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: A.Y#hashCode(){} - // Public signature: /A.Y..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: A.Y#equals(kotlin.Any?){} + // Public signature: /A.Y..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -121,9 +111,9 @@ open enum class A : Enum { // Public signature: /A.Y..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A.Y#toString(){} - // Public signature: /A.Y..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: A.Y#hashCode(){} + // Public signature: /A.Y..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -131,9 +121,9 @@ open enum class A : Enum { // Public signature: /A.Y..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A.Y#f(){} - // Public signature: /A.Y..f|5316533450599009716[0] - // Public signature debug description: f(){} + // Mangled name: A.Y#toString(){} + // Public signature: /A.Y..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK JVM_IR: @@ -141,9 +131,9 @@ open enum class A : Enum { // Public signature: /A.Y..f|9098388873611041001[0] // Public signature debug description: f(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A.Y{}name - // Public signature: /A.Y..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: A.Y#f(){} + // Public signature: /A.Y..f|5316533450599009716[0] + // Public signature debug description: f(){} override fun f(): String // CHECK: @@ -156,9 +146,9 @@ open enum class A : Enum { // Public signature: /A.Y..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A.Y{}ordinal - // Public signature: /A.Y..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: A.Y#(){} + // Public signature: /A.Y..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -171,9 +161,9 @@ open enum class A : Enum { // Public signature: /A.Y..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A.Y{}prop1 - // Public signature: /A.Y..prop1|-8329482664683066904[0] - // Public signature debug description: {}prop1 + // Mangled name: A.Y#(){} + // Public signature: /A.Y..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int // CHECK: @@ -186,9 +176,9 @@ open enum class A : Enum { // Public signature: /A.Y..prop1.|-4492148362286235808[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A.Y{}prop2 - // Public signature: /A.Y..prop2|4028676822563871521[0] - // Public signature debug description: {}prop2 + // Mangled name: A.Y#(){} + // Public signature: /A.Y..prop1.|-5264940751743936228[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -201,9 +191,9 @@ open enum class A : Enum { // Public signature: /A.Y..prop2.|-8475233937604972170[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A.Y{}prop3 - // Public signature: /A.Y..prop3|-8425624005164692994[0] - // Public signature debug description: {}prop3 + // Mangled name: A.Y#(){} + // Public signature: /A.Y..prop2.|-7428780384219162019[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -216,9 +206,9 @@ open enum class A : Enum { // Public signature: /A.Y..prop3.|-7199457926449641523[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A.Y#(kotlin.String){} - // Public signature: /A.Y..prop3.|-8957114365133646196[0] - // Public signature debug description: (kotlin.String){} + // Mangled name: A.Y#(){} + // Public signature: /A.Y..prop3.|-2432765917107722645[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: // Mangled name: A.Y#(kotlin.String){} @@ -238,9 +228,9 @@ open enum class A : Enum { // Public signature: /A.valueOf|8636923007498802918[0] // Public signature debug description: valueOf#static(kotlin.String){}A // CHECK JS_IR NATIVE: - // Mangled name: A#values#static(){} - // Public signature: /A.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: A#valueOf#static(kotlin.String){} + // Public signature: /A.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): A // CHECK JVM_IR: @@ -248,29 +238,19 @@ open enum class A : Enum { // Public signature: /A.values|5753238680897834936[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: A#compareTo(A){} - // Public signature: /A.compareTo|5303387127644845713[0] - // Public signature debug description: compareTo(A){} + // Mangled name: A#values#static(){} + // Public signature: /A.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: A#clone(){}kotlin.Any - // Public signature: /A.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: A#equals(kotlin.Any?){} - // Public signature: /A.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: A#compareTo(A){}kotlin.Int // Public signature: /A.compareTo|-315052537630360750[0] // Public signature debug description: compareTo(A){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A#hashCode(){} - // Public signature: /A.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: A#compareTo(A){} + // Public signature: /A.compareTo|5303387127644845713[0] + // Public signature debug description: compareTo(A){} /* fake */ override operator fun compareTo(other: A): Int // CHECK JVM_IR: @@ -278,9 +258,9 @@ open enum class A : Enum { // Public signature: /A.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: A#toString(){} - // Public signature: /A.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: A#equals(kotlin.Any?){} + // Public signature: /A.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -288,9 +268,9 @@ open enum class A : Enum { // Public signature: /A.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A#f(){} - // Public signature: /A.f|5316533450599009716[0] - // Public signature debug description: f(){} + // Mangled name: A#hashCode(){} + // Public signature: /A.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -298,9 +278,9 @@ open enum class A : Enum { // Public signature: /A.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A#static{}entries - // Public signature: /A.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: A#toString(){} + // Public signature: /A.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK JVM_IR: @@ -308,9 +288,9 @@ open enum class A : Enum { // Public signature: /A.f|9098388873611041001[0] // Public signature debug description: f(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A##static(){} - // Public signature: /A.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: A#f(){} + // Public signature: /A.f|5316533450599009716[0] + // Public signature debug description: f(){} open fun f(): String // CHECK: @@ -323,9 +303,9 @@ open enum class A : Enum { // Public signature: /A.entries.|3279885591622842062[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: A#(){} - // Public signature: /A.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: A##static(){} + // Public signature: /A.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -338,9 +318,9 @@ open enum class A : Enum { // Public signature: /A.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A#(){} - // Public signature: /A.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: A#(){} + // Public signature: /A.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -352,6 +332,10 @@ open enum class A : Enum { // Mangled name: A#(){}kotlin.Int // Public signature: /A.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: A#(){} + // Public signature: /A.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.fir.ir.txt b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.fir.ir.txt index c4f527d0b38..172aeabbcbc 100644 --- a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.fir.ir.txt +++ b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.fir.ir.txt @@ -34,10 +34,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.Test0> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test0>, other:.Test0) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -74,14 +70,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test0?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> CLASS ENUM_CLASS name:Test1 modality:FINAL visibility:public superTypes:[kotlin.Enum<.Test1>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.Test1 CONSTRUCTOR visibility:private <> (x:kotlin.Int) returnType:.Test1 [primary] @@ -121,10 +109,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.Test1> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test1>, other:.Test1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -161,14 +145,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> CLASS ENUM_CLASS name:Test2 modality:ABSTRACT visibility:public superTypes:[kotlin.Enum<.Test2>] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.Test2 CONSTRUCTOR visibility:private <> (x:kotlin.Int) returnType:.Test2 [primary] @@ -212,10 +188,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in .Test2 $this: VALUE_PARAMETER name: type:.Test2 - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>, other:.Test2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .Test2): kotlin.Int declared in .Test2 @@ -252,14 +224,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in .Test2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> ENUM_ENTRY name:ONE init: EXPRESSION_BODY ENUM_CONSTRUCTOR_CALL 'private constructor () declared in .Test2.ONE' @@ -285,10 +249,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in .Test2 $this: VALUE_PARAMETER name: type:.Test2 - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>, other:.Test2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .Test2): kotlin.Int declared in .Test2 @@ -325,14 +285,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in .Test2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> CONSTRUCTOR visibility:private <> () returnType:.Test2 BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'private constructor (x: kotlin.Int) declared in .Test2' @@ -348,10 +300,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.Test2> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>, other:.Test2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -388,11 +336,3 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> diff --git a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.ir.txt b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.ir.txt index 588792efb21..7c5ceb0b5e7 100644 --- a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.ir.txt +++ b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.ir.txt @@ -43,10 +43,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test0>, other:.Test0) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -57,14 +53,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test0?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test0> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test0>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -130,10 +118,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test1>, other:.Test1) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -144,14 +128,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test1?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test1> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test1>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -231,10 +207,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in .Test2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>, other:.Test2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .Test2): kotlin.Int declared in .Test2 @@ -245,14 +217,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .Test2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .Test2 @@ -305,10 +269,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in .Test2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>, other:.Test2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .Test2): kotlin.Int declared in .Test2 @@ -319,14 +279,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .Test2 $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? declared in .Test2 - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .Test2 @@ -359,10 +311,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>, other:.Test2) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -373,14 +321,6 @@ FILE fqName: fileName:/enumWithSecondaryCtor.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Test2?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Test2> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Test2>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.kt b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.kt index 8d2d6ccc699..9977d37be29 100644 --- a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.kt +++ b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.kt @@ -1,6 +1,4 @@ // WITH_STDLIB -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize (K1), getDeclaringClass (K1), clone (K2) enum class Test0(val x: Int) { ZERO; diff --git a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.sig.kt.txt b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.sig.kt.txt index 1ac784bf947..a5f4504f863 100644 --- a/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.sig.kt.txt +++ b/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.sig.kt.txt @@ -52,24 +52,14 @@ enum class Test0 : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: Test0#clone(){}kotlin.Any - // Public signature: /Test0.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Test0#compareTo(Test0){} - // Public signature: /Test0.compareTo|204856484322831463[0] - // Public signature debug description: compareTo(Test0){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Test0#compareTo(Test0){}kotlin.Int // Public signature: /Test0.compareTo|3359014647054499559[0] // Public signature debug description: compareTo(Test0){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test0#equals(kotlin.Any?){} - // Public signature: /Test0.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: Test0#compareTo(Test0){} + // Public signature: /Test0.compareTo|204856484322831463[0] + // Public signature debug description: compareTo(Test0){} /* fake */ override operator fun compareTo(other: Test0): Int // CHECK JVM_IR: @@ -77,9 +67,9 @@ enum class Test0 : Enum { // Public signature: /Test0.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Test0#hashCode(){} - // Public signature: /Test0.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: Test0#equals(kotlin.Any?){} + // Public signature: /Test0.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -87,9 +77,9 @@ enum class Test0 : Enum { // Public signature: /Test0.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test0#toString(){} - // Public signature: /Test0.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Test0#hashCode(){} + // Public signature: /Test0.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -97,9 +87,9 @@ enum class Test0 : Enum { // Public signature: /Test0.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test0#static{}entries - // Public signature: /Test0.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: Test0#toString(){} + // Public signature: /Test0.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -112,9 +102,9 @@ enum class Test0 : Enum { // Public signature: /Test0.entries.|-2219920410598886791[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: Test0{}name - // Public signature: /Test0.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: Test0##static(){} + // Public signature: /Test0.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -127,9 +117,9 @@ enum class Test0 : Enum { // Public signature: /Test0.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test0{}ordinal - // Public signature: /Test0.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: Test0#(){} + // Public signature: /Test0.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -142,8 +132,9 @@ enum class Test0 : Enum { // Public signature: /Test0.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test1 - // Public signature: /Test1|null[0] + // Mangled name: Test0#(){} + // Public signature: /Test0.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -162,9 +153,9 @@ enum class Test1 : Enum { // Public signature: /Test1.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test1#(){} - // Public signature: /Test1.|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: Test1#(){} + // Public signature: /Test1.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -192,9 +183,9 @@ enum class Test1 : Enum { // Public signature: /Test1.valueOf|7465772014771661384[0] // Public signature debug description: valueOf#static(kotlin.String){}Test1 // CHECK JS_IR NATIVE: - // Mangled name: Test1#values#static(){} - // Public signature: /Test1.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: Test1#valueOf#static(kotlin.String){} + // Public signature: /Test1.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): Test1 // CHECK JVM_IR: @@ -202,29 +193,19 @@ enum class Test1 : Enum { // Public signature: /Test1.values|1411653061731083303[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: Test1#compareTo(Test1){} - // Public signature: /Test1.compareTo|-311238387817104902[0] - // Public signature debug description: compareTo(Test1){} + // Mangled name: Test1#values#static(){} + // Public signature: /Test1.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: Test1#clone(){}kotlin.Any - // Public signature: /Test1.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Test1#equals(kotlin.Any?){} - // Public signature: /Test1.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Test1#compareTo(Test1){}kotlin.Int // Public signature: /Test1.compareTo|851560667494191433[0] // Public signature debug description: compareTo(Test1){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test1#hashCode(){} - // Public signature: /Test1.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: Test1#compareTo(Test1){} + // Public signature: /Test1.compareTo|-311238387817104902[0] + // Public signature debug description: compareTo(Test1){} /* fake */ override operator fun compareTo(other: Test1): Int // CHECK JVM_IR: @@ -232,9 +213,9 @@ enum class Test1 : Enum { // Public signature: /Test1.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Test1#toString(){} - // Public signature: /Test1.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Test1#equals(kotlin.Any?){} + // Public signature: /Test1.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -242,9 +223,9 @@ enum class Test1 : Enum { // Public signature: /Test1.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test1#static{}entries - // Public signature: /Test1.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: Test1#hashCode(){} + // Public signature: /Test1.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -252,9 +233,9 @@ enum class Test1 : Enum { // Public signature: /Test1.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test1##static(){} - // Public signature: /Test1.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: Test1#toString(){} + // Public signature: /Test1.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -267,9 +248,9 @@ enum class Test1 : Enum { // Public signature: /Test1.entries.|-7972344572232634128[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: Test1#(){} - // Public signature: /Test1.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: Test1##static(){} + // Public signature: /Test1.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -282,9 +263,9 @@ enum class Test1 : Enum { // Public signature: /Test1.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test1#(){} - // Public signature: /Test1.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: Test1#(){} + // Public signature: /Test1.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -297,9 +278,9 @@ enum class Test1 : Enum { // Public signature: /Test1.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2{}x - // Public signature: /Test2.x|-8060530855978347579[0] - // Public signature debug description: {}x + // Mangled name: Test1#(){} + // Public signature: /Test1.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -318,9 +299,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2#(kotlin.Int){} - // Public signature: /Test2.|-5182794243525578284[0] - // Public signature debug description: (kotlin.Int){} + // Mangled name: Test2#(){} + // Public signature: /Test2.x.|1482705010654679335[0] + // Public signature debug description: (){} get // CHECK: @@ -347,24 +328,14 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: Test2.ONE#clone(){}kotlin.Any - // Public signature: /Test2.ONE..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Test2.ONE#hashCode(){} - // Public signature: /Test2.ONE..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Test2.ONE#compareTo(Test2){}kotlin.Int // Public signature: /Test2.ONE..compareTo|-4058923296557042542[0] // Public signature debug description: compareTo(Test2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2.ONE#toString(){} - // Public signature: /Test2.ONE..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Test2.ONE#compareTo(Test2){} + // Public signature: /Test2.ONE..compareTo|8648216442001158564[0] + // Public signature debug description: compareTo(Test2){} /* fake */ override operator fun compareTo(other: Test2): Int // CHECK JVM_IR: @@ -372,9 +343,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Test2.ONE#foo(){} - // Public signature: /Test2.ONE..foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: Test2.ONE#equals(kotlin.Any?){} + // Public signature: /Test2.ONE..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -382,9 +353,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2.ONE{}name - // Public signature: /Test2.ONE..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: Test2.ONE#hashCode(){} + // Public signature: /Test2.ONE..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -392,9 +363,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test2.ONE#(){} - // Public signature: /Test2.ONE..name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: Test2.ONE#toString(){} + // Public signature: /Test2.ONE..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -413,9 +384,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test2.ONE{}x - // Public signature: /Test2.ONE..x|-8060530855978347579[0] - // Public signature debug description: {}x + // Mangled name: Test2.ONE#(){} + // Public signature: /Test2.ONE..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -428,8 +399,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO - // Public signature: /Test2.ZERO|null[0] + // Mangled name: Test2.ONE#(){} + // Public signature: /Test2.ONE..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int // CHECK: @@ -442,9 +414,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ONE..x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO#(){} - // Public signature: /Test2.ZERO..|-5645683436151566731[0] - // Public signature debug description: (){} + // Mangled name: Test2.ONE#(){} + // Public signature: /Test2.ONE..x.|1482705010654679335[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -463,24 +435,14 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: Test2.ZERO#clone(){}kotlin.Any - // Public signature: /Test2.ZERO..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO#toString(){} - // Public signature: /Test2.ZERO..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Test2.ZERO#compareTo(Test2){}kotlin.Int // Public signature: /Test2.ZERO..compareTo|-4058923296557042542[0] // Public signature debug description: compareTo(Test2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO#foo(){} - // Public signature: /Test2.ZERO..foo|-1041209573719867811[0] - // Public signature debug description: foo(){} + // Mangled name: Test2.ZERO#compareTo(Test2){} + // Public signature: /Test2.ZERO..compareTo|8648216442001158564[0] + // Public signature debug description: compareTo(Test2){} /* fake */ override operator fun compareTo(other: Test2): Int // CHECK JVM_IR: @@ -488,9 +450,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO{}name - // Public signature: /Test2.ZERO..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: Test2.ZERO#equals(kotlin.Any?){} + // Public signature: /Test2.ZERO..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -498,9 +460,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO#(){} - // Public signature: /Test2.ZERO..name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: Test2.ZERO#hashCode(){} + // Public signature: /Test2.ZERO..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -508,9 +470,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO{}ordinal - // Public signature: /Test2.ZERO..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: Test2.ZERO#toString(){} + // Public signature: /Test2.ZERO..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -529,9 +491,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test2.ZERO#(){} - // Public signature: /Test2.ZERO..x.|1482705010654679335[0] - // Public signature debug description: (){} + // Mangled name: Test2.ZERO#(){} + // Public signature: /Test2.ZERO..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -544,9 +506,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2#values#static(){} - // Public signature: /Test2.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: Test2.ZERO#(){} + // Public signature: /Test2.ZERO..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int // CHECK: @@ -559,9 +521,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.ZERO..x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2#equals(kotlin.Any?){} - // Public signature: /Test2.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: Test2.ZERO#(){} + // Public signature: /Test2.ZERO..x.|1482705010654679335[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -571,9 +533,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.valueOf|-8667399781449349710[0] // Public signature debug description: valueOf#static(kotlin.String){}Test2 // CHECK JS_IR NATIVE: - // Mangled name: Test2#hashCode(){} - // Public signature: /Test2.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: Test2#valueOf#static(kotlin.String){} + // Public signature: /Test2.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): Test2 // CHECK JVM_IR: @@ -581,29 +543,19 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.values|-1286825984033907824[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: Test2#toString(){} - // Public signature: /Test2.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Test2#values#static(){} + // Public signature: /Test2.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: Test2#clone(){}kotlin.Any - // Public signature: /Test2.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Test2#foo(){} - // Public signature: /Test2.foo|-1041209573719867811[0] - // Public signature debug description: foo(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Test2#compareTo(Test2){}kotlin.Int // Public signature: /Test2.compareTo|-4058923296557042542[0] // Public signature debug description: compareTo(Test2){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2#static{}entries - // Public signature: /Test2.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: Test2#compareTo(Test2){} + // Public signature: /Test2.compareTo|8648216442001158564[0] + // Public signature debug description: compareTo(Test2){} /* fake */ override operator fun compareTo(other: Test2): Int // CHECK JVM_IR: @@ -611,9 +563,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Test2##static(){} - // Public signature: /Test2.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: Test2#equals(kotlin.Any?){} + // Public signature: /Test2.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -621,9 +573,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Test2{}name - // Public signature: /Test2.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: Test2#hashCode(){} + // Public signature: /Test2.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -631,9 +583,9 @@ abstract enum class Test2 : Enum { // Public signature: /Test2.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Test2#(){} - // Public signature: /Test2.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: Test2#toString(){} + // Public signature: /Test2.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -651,6 +603,10 @@ abstract enum class Test2 : Enum { // Mangled name: Test2##static(){}kotlin.enums.EnumEntries // Public signature: /Test2.entries.|2374563375183991273[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries + // CHECK JS_IR NATIVE: + // Mangled name: Test2##static(){} + // Public signature: /Test2.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -662,6 +618,10 @@ abstract enum class Test2 : Enum { // Mangled name: Test2#(){}kotlin.String // Public signature: /Test2.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: Test2#(){} + // Public signature: /Test2.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -673,6 +633,10 @@ abstract enum class Test2 : Enum { // Mangled name: Test2#(){}kotlin.Int // Public signature: /Test2.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: Test2#(){} + // Public signature: /Test2.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.fir.ir.txt b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.fir.ir.txt index db3f97ce484..130b41fac55 100644 --- a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.fir.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.fir.ir.txt @@ -147,10 +147,6 @@ FILE fqName: fileName:/classesWithAnnotations.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>, other:.TestEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -187,14 +183,6 @@ FILE fqName: fileName:/classesWithAnnotations.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> CLASS ANNOTATION_CLASS name:TestAnnotation modality:OPEN visibility:public superTypes:[kotlin.Annotation] annotations: TestAnn(x = "annotation") diff --git a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.ir.txt b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.ir.txt index 7ccc82b9e8b..d035c885bfe 100644 --- a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.ir.txt @@ -156,10 +156,6 @@ FILE fqName: fileName:/classesWithAnnotations.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>, other:.TestEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -170,14 +166,6 @@ FILE fqName: fileName:/classesWithAnnotations.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.kt b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.kt index 4121ec27678..afcb63a1723 100644 --- a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.kt +++ b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - annotation class TestAnn(val x: String) @TestAnn("class") diff --git a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.sig.kt.txt b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.sig.kt.txt index 1ce03416d94..fb3baaef3d1 100644 --- a/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.sig.kt.txt +++ b/compiler/testData/ir/irText/declarations/annotations/classesWithAnnotations.sig.kt.txt @@ -106,24 +106,14 @@ enum class TestEnum : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: TestEnum#clone(){}kotlin.Any - // Public signature: /TestEnum.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: TestEnum#compareTo(TestEnum){} - // Public signature: /TestEnum.compareTo|7350720606720122863[0] - // Public signature debug description: compareTo(TestEnum){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: TestEnum#compareTo(TestEnum){}kotlin.Int // Public signature: /TestEnum.compareTo|7559751212169934687[0] // Public signature debug description: compareTo(TestEnum){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum#equals(kotlin.Any?){} - // Public signature: /TestEnum.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: TestEnum#compareTo(TestEnum){} + // Public signature: /TestEnum.compareTo|7350720606720122863[0] + // Public signature debug description: compareTo(TestEnum){} /* fake */ override operator fun compareTo(other: TestEnum): Int // CHECK JVM_IR: @@ -131,9 +121,9 @@ enum class TestEnum : Enum { // Public signature: /TestEnum.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: TestEnum#hashCode(){} - // Public signature: /TestEnum.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: TestEnum#equals(kotlin.Any?){} + // Public signature: /TestEnum.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -141,9 +131,9 @@ enum class TestEnum : Enum { // Public signature: /TestEnum.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestEnum#toString(){} - // Public signature: /TestEnum.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: TestEnum#hashCode(){} + // Public signature: /TestEnum.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -151,9 +141,9 @@ enum class TestEnum : Enum { // Public signature: /TestEnum.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum#static{}entries - // Public signature: /TestEnum.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: TestEnum#toString(){} + // Public signature: /TestEnum.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -166,9 +156,9 @@ enum class TestEnum : Enum { // Public signature: /TestEnum.entries.|6962221716588245012[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: TestEnum{}name - // Public signature: /TestEnum.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: TestEnum##static(){} + // Public signature: /TestEnum.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -181,9 +171,9 @@ enum class TestEnum : Enum { // Public signature: /TestEnum.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: TestEnum{}ordinal - // Public signature: /TestEnum.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: TestEnum#(){} + // Public signature: /TestEnum.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -196,8 +186,9 @@ enum class TestEnum : Enum { // Public signature: /TestEnum.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: TestInterface - // Public signature: /TestInterface|null[0] + // Mangled name: TestEnum#(){} + // Public signature: /TestEnum.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.fir.ir.txt b/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.fir.ir.txt index e398f559500..b1666669c8f 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.fir.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.fir.ir.txt @@ -64,10 +64,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .TestEnum.ENTRY2' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null receiver: GET_VAR ': .TestEnum.ENTRY2 declared in .TestEnum.ENTRY2.' type=.TestEnum.ENTRY2 origin=null - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>, other:.TestEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum): kotlin.Int declared in .TestEnum @@ -104,14 +100,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt overridden: public final fun (): kotlin.Int declared in .TestEnum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? declared in .TestEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.TestEnum> SYNTHETIC_BODY kind=ENUM_VALUES FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:.TestEnum @@ -121,10 +109,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.TestEnum> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>, other:.TestEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -161,11 +145,3 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> diff --git a/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.ir.txt b/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.ir.txt index f9afc85ba30..65a8ea4e631 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.ir.txt @@ -85,10 +85,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt overridden: public final fun (): kotlin.Int declared in .TestEnum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .TestEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>, other:.TestEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .TestEnum): kotlin.Int declared in .TestEnum @@ -99,14 +95,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .TestEnum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .TestEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? declared in .TestEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .TestEnum @@ -133,10 +121,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>, other:.TestEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -147,14 +131,6 @@ FILE fqName: fileName:/enumEntriesWithAnnotations.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .TestEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.TestEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.TestEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.kt b/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.kt index 6c216a729af..b07b7843724 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.kt +++ b/compiler/testData/ir/irText/declarations/annotations/enumEntriesWithAnnotations.kt @@ -1,11 +1,6 @@ -// IGNORE_BACKEND: JS_IR - // SKIP_SIGNATURE_DUMP // ^ Difference in annotations generated by K1 and K2 -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - annotation class TestAnn(val x: String) enum class TestEnum { diff --git a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.fir.ir.txt b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.fir.ir.txt index 5b051124c46..5e94071dd40 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.fir.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.fir.ir.txt @@ -27,10 +27,6 @@ FILE fqName: fileName:/enumsInAnnotationArguments.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.En> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -67,14 +63,6 @@ FILE fqName: fileName:/enumsInAnnotationArguments.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> CLASS ANNOTATION_CLASS name:TestAnn modality:OPEN visibility:public superTypes:[kotlin.Annotation] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.TestAnn CONSTRUCTOR visibility:public <> (x:.En) returnType:.TestAnn [primary] diff --git a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.ir.txt b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.ir.txt index d17603a05e7..1f44357ca57 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.ir.txt @@ -36,10 +36,6 @@ FILE fqName: fileName:/enumsInAnnotationArguments.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -50,14 +46,6 @@ FILE fqName: fileName:/enumsInAnnotationArguments.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.kt b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.kt index 6d764b07a85..bf6414420b3 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.kt +++ b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - enum class En { A, B, C, D } annotation class TestAnn(val x: En) diff --git a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.sig.kt.txt b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.sig.kt.txt index 8932d14f5e6..8889abf67ea 100644 --- a/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.sig.kt.txt +++ b/compiler/testData/ir/irText/declarations/annotations/enumsInAnnotationArguments.sig.kt.txt @@ -74,23 +74,13 @@ enum class En : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: En#clone(){}kotlin.Any - // Public signature: /En.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: En#compareTo(En){} - // Public signature: /En.compareTo|3555292261046836181[0] - // Public signature debug description: clone(){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: En#compareTo(En){}kotlin.Int // Public signature: /En.compareTo|7450321438177070471[0] // Public signature debug description: compareTo(En){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#equals(kotlin.Any?){} - // Public signature: /En.equals|4638265728071529943[0] + // Mangled name: En#compareTo(En){} + // Public signature: /En.compareTo|3555292261046836181[0] // Public signature debug description: compareTo(En){} /* fake */ override operator fun compareTo(other: En): Int @@ -99,8 +89,8 @@ enum class En : Enum { // Public signature: /En.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: En#hashCode(){} - // Public signature: /En.hashCode|3409210261493131192[0] + // Mangled name: En#equals(kotlin.Any?){} + // Public signature: /En.equals|4638265728071529943[0] // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean @@ -109,9 +99,9 @@ enum class En : Enum { // Public signature: /En.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#toString(){} - // Public signature: /En.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: En#hashCode(){} + // Public signature: /En.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -119,9 +109,9 @@ enum class En : Enum { // Public signature: /En.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En#static{}entries - // Public signature: /En.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: En#toString(){} + // Public signature: /En.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -134,9 +124,9 @@ enum class En : Enum { // Public signature: /En.entries.|7832995474718587298[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: En{}name - // Public signature: /En.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: En##static(){} + // Public signature: /En.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -149,9 +139,9 @@ enum class En : Enum { // Public signature: /En.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En{}ordinal - // Public signature: /En.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: En#(){} + // Public signature: /En.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -164,9 +154,9 @@ enum class En : Enum { // Public signature: /En.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: #test1(){} - // Public signature: /test1|4297044443957252634[0] - // Public signature debug description: test1(){} + // Mangled name: En#(){} + // Public signature: /En.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.fir.ir.txt b/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.fir.ir.txt index d919cc929ef..2342d6fab99 100644 --- a/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.fir.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.fir.ir.txt @@ -49,10 +49,6 @@ FILE fqName: fileName:/C.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.E> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.E>, other:.E) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -89,14 +85,6 @@ FILE fqName: fileName:/C.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .E?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> CLASS ANNOTATION_CLASS name:Annos modality:OPEN visibility:public superTypes:[kotlin.Annotation] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.Annos CONSTRUCTOR visibility:public <> (value:kotlin.Array<.Anno>) returnType:.Annos [primary] diff --git a/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.ir.txt b/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.ir.txt index 960b313cd73..c754835f07c 100644 --- a/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.ir.txt +++ b/compiler/testData/ir/irText/declarations/annotations/javaAnnotationWithSingleArrayArgument.ir.txt @@ -58,10 +58,6 @@ FILE fqName: fileName:/C.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.E>, other:.E) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -72,14 +68,6 @@ FILE fqName: fileName:/C.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .E?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.E> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.E>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.ir.txt b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.ir.txt index 3439547ad97..724ebd03537 100644 --- a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.ir.txt +++ b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.ir.txt @@ -21,10 +21,6 @@ FILE fqName: fileName:/expectedEnumClass.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -35,14 +31,6 @@ FILE fqName: fileName:/expectedEnumClass.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum @@ -94,10 +82,6 @@ FILE fqName: fileName:/expectedEnumClass.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -108,14 +92,6 @@ FILE fqName: fileName:/expectedEnumClass.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.kt b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.kt index c8d5b4b5051..7a7b9ab4acf 100644 --- a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.kt +++ b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.kt @@ -2,11 +2,6 @@ // IGNORE_BACKEND_K2: ANY // FIR status: In FIR, declaring the same `expect` and `actual` classes in one compiler module is not possible (see KT-55177). -// IGNORE_BACKEND_K1: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND_K1: NATIVE - expect enum class MyEnum { FOO, BAR diff --git a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.sig.kt.txt b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.sig.kt.txt index 2a55dc5e4aa..6c541714a54 100644 --- a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.sig.kt.txt +++ b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass.sig.kt.txt @@ -32,24 +32,14 @@ expect enum class MyEnum : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: MyEnum#clone(){}kotlin.Any - // Public signature: /MyEnum.clone|-6903128697527593263[1] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#compareTo(MyEnum){} - // Public signature: /MyEnum.compareTo|-1404018836780573573[1] - // Public signature debug description: compareTo(MyEnum){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: MyEnum#compareTo(MyEnum){}kotlin.Int // Public signature: /MyEnum.compareTo|2015858924903177055[1] // Public signature debug description: compareTo(MyEnum){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#equals(kotlin.Any?){} - // Public signature: /MyEnum.equals|4638265728071529943[1] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: MyEnum#compareTo(MyEnum){} + // Public signature: /MyEnum.compareTo|-1404018836780573573[1] + // Public signature debug description: compareTo(MyEnum){} /* fake */ override operator fun compareTo(other: MyEnum): Int // CHECK JVM_IR: @@ -57,9 +47,9 @@ expect enum class MyEnum : Enum { // Public signature: /MyEnum.equals|722809408929142791[1] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#hashCode(){} - // Public signature: /MyEnum.hashCode|3409210261493131192[1] - // Public signature debug description: hashCode(){} + // Mangled name: MyEnum#equals(kotlin.Any?){} + // Public signature: /MyEnum.equals|4638265728071529943[1] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -67,9 +57,9 @@ expect enum class MyEnum : Enum { // Public signature: /MyEnum.hashCode|-8048879360829830756[1] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#toString(){} - // Public signature: /MyEnum.toString|-1522858123163872138[1] - // Public signature debug description: toString(){} + // Mangled name: MyEnum#hashCode(){} + // Public signature: /MyEnum.hashCode|3409210261493131192[1] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -77,9 +67,9 @@ expect enum class MyEnum : Enum { // Public signature: /MyEnum.toString|6958853723545266802[1] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#static{}entries - // Public signature: /MyEnum.entries|-5134227801081826149[1] - // Public signature debug description: #static{}entries + // Mangled name: MyEnum#toString(){} + // Public signature: /MyEnum.toString|-1522858123163872138[1] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -92,9 +82,9 @@ expect enum class MyEnum : Enum { // Public signature: /MyEnum.entries.|-3922959509726908718[1] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: MyEnum{}name - // Public signature: /MyEnum.name|4231860309499509769[1] - // Public signature debug description: {}name + // Mangled name: MyEnum##static(){} + // Public signature: /MyEnum.entries.|-6068527377476727729[1] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -107,9 +97,9 @@ expect enum class MyEnum : Enum { // Public signature: /MyEnum.name.|-8006111524522882650[1] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: MyEnum{}ordinal - // Public signature: /MyEnum.ordinal|1912745122988592376[1] - // Public signature debug description: {}ordinal + // Mangled name: MyEnum#(){} + // Public signature: /MyEnum.name.|5879344792307730109[1] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -122,8 +112,9 @@ expect enum class MyEnum : Enum { // Public signature: /MyEnum.ordinal.|-6902664390061762634[1] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: MyEnum - // Public signature: /MyEnum|null[0] + // Mangled name: MyEnum#(){} + // Public signature: /MyEnum.ordinal.|8409904226035914023[1] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -157,9 +148,9 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.valueOf|4316550590519800984[0] // Public signature debug description: valueOf#static(kotlin.String){}MyEnum // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#values#static(){} - // Public signature: /MyEnum.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: MyEnum#valueOf#static(kotlin.String){} + // Public signature: /MyEnum.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): MyEnum // CHECK JVM_IR: @@ -167,29 +158,19 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.values|3097625172661156808[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#compareTo(MyEnum){} - // Public signature: /MyEnum.compareTo|-1404018836780573573[0] - // Public signature debug description: compareTo(MyEnum){} + // Mangled name: MyEnum#values#static(){} + // Public signature: /MyEnum.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: MyEnum#clone(){}kotlin.Any - // Public signature: /MyEnum.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#equals(kotlin.Any?){} - // Public signature: /MyEnum.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: MyEnum#compareTo(MyEnum){}kotlin.Int // Public signature: /MyEnum.compareTo|2015858924903177055[0] // Public signature debug description: compareTo(MyEnum){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#hashCode(){} - // Public signature: /MyEnum.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: MyEnum#compareTo(MyEnum){} + // Public signature: /MyEnum.compareTo|-1404018836780573573[0] + // Public signature debug description: compareTo(MyEnum){} /* fake */ override operator fun compareTo(other: MyEnum): Int // CHECK JVM_IR: @@ -197,9 +178,9 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#toString(){} - // Public signature: /MyEnum.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: MyEnum#equals(kotlin.Any?){} + // Public signature: /MyEnum.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -207,9 +188,9 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#static{}entries - // Public signature: /MyEnum.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: MyEnum#hashCode(){} + // Public signature: /MyEnum.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -217,9 +198,9 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: MyEnum##static(){} - // Public signature: /MyEnum.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: MyEnum#toString(){} + // Public signature: /MyEnum.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -232,9 +213,9 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.entries.|-3922959509726908718[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#(){} - // Public signature: /MyEnum.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: MyEnum##static(){} + // Public signature: /MyEnum.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -247,9 +228,9 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: MyEnum#(){} - // Public signature: /MyEnum.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: MyEnum#(){} + // Public signature: /MyEnum.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -261,6 +242,10 @@ enum class MyEnum : Enum { // Mangled name: MyEnum#(){}kotlin.Int // Public signature: /MyEnum.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#(){} + // Public signature: /MyEnum.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.ir.txt b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.ir.txt index 24203596342..af1534e8632 100644 --- a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.ir.txt +++ b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.ir.txt @@ -25,10 +25,6 @@ FILE fqName: fileName:/main.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.MyEnum> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -65,11 +61,3 @@ FILE fqName: fileName:/main.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> diff --git a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.kt b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.kt index 749f86cced6..654d5c73ce7 100644 --- a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.kt +++ b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.kt @@ -1,8 +1,6 @@ // FIR_IDENTICAL // !LANGUAGE: +MultiPlatformProjects // IGNORE_BACKEND_K1: ANY -// IGNORE_BACKEND_K2: JS_IR -// IGNORE_BACKEND_K2: NATIVE // MODULE: lib // FILE: lib.kt diff --git a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.sig.kt.txt b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.sig.kt.txt index 5bc4356f37e..70e250869d1 100644 --- a/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.sig.kt.txt +++ b/compiler/testData/ir/irText/declarations/multiplatform/expectedEnumClass2.sig.kt.txt @@ -21,7 +21,10 @@ enum class MyEnum : Enum { // Public signature: /MyEnum.BAZ|null[0] BAZ - // CHECK: + // CHECK JVM_IR: + // Mangled name: MyEnum.FOO + // Public signature: /MyEnum.FOO|null[0] + // CHECK JS_IR NATIVE: // Mangled name: MyEnum.FOO // Public signature: /MyEnum.FOO|null[0] FOO @@ -30,42 +33,60 @@ enum class MyEnum : Enum { // Mangled name: MyEnum#valueOf#static(kotlin.String){}MyEnum // Public signature: /MyEnum.valueOf|4316550590519800984[0] // Public signature debug description: valueOf#static(kotlin.String){}MyEnum + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#valueOf#static(kotlin.String){} + // Public signature: /MyEnum.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): MyEnum // CHECK JVM_IR: // Mangled name: MyEnum#values#static(){}kotlin.Array // Public signature: /MyEnum.values|3097625172661156808[0] // Public signature debug description: values#static(){}kotlin.Array + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#values#static(){} + // Public signature: /MyEnum.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: MyEnum#clone(){}kotlin.Any - // Public signature: /MyEnum.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: MyEnum#compareTo(MyEnum){}kotlin.Int // Public signature: /MyEnum.compareTo|2015858924903177055[0] // Public signature debug description: compareTo(MyEnum){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#compareTo(MyEnum){} + // Public signature: /MyEnum.compareTo|-1404018836780573573[0] + // Public signature debug description: compareTo(MyEnum){} /* fake */ override operator fun compareTo(other: MyEnum): Int // CHECK JVM_IR: // Mangled name: MyEnum#equals(kotlin.Any?){}kotlin.Boolean // Public signature: /MyEnum.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#equals(kotlin.Any?){} + // Public signature: /MyEnum.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: // Mangled name: MyEnum#hashCode(){}kotlin.Int // Public signature: /MyEnum.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#hashCode(){} + // Public signature: /MyEnum.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: // Mangled name: MyEnum#toString(){}kotlin.String // Public signature: /MyEnum.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#toString(){} + // Public signature: /MyEnum.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -77,6 +98,10 @@ enum class MyEnum : Enum { // Mangled name: MyEnum##static(){}kotlin.enums.EnumEntries // Public signature: /MyEnum.entries.|-3922959509726908718[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum##static(){} + // Public signature: /MyEnum.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -88,6 +113,10 @@ enum class MyEnum : Enum { // Mangled name: MyEnum#(){}kotlin.String // Public signature: /MyEnum.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#(){} + // Public signature: /MyEnum.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -99,6 +128,10 @@ enum class MyEnum : Enum { // Mangled name: MyEnum#(){}kotlin.Int // Public signature: /MyEnum.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: MyEnum#(){} + // Public signature: /MyEnum.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.fir.ir.txt b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.fir.ir.txt index 3e5c20a90b9..ffff3a8b81c 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.fir.ir.txt @@ -46,10 +46,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt RETURN type=kotlin.Nothing from='public open fun (): kotlin.Function0 declared in .X.B' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value type:kotlin.Function0 visibility:private [final]' type=kotlin.Function0 origin=null receiver: GET_VAR ': .X.B declared in .X.B.' type=.X.B origin=null - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .X - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>, other:.X) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .X): kotlin.Int declared in .X @@ -86,14 +82,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt overridden: public final fun (): kotlin.Int declared in .X $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .X?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .X?>? declared in .X - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .X - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> PROPERTY name:value visibility:public modality:ABSTRACT [val] FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:ABSTRACT <> ($this:.X) returnType:kotlin.Function0 correspondingProperty: PROPERTY name:value visibility:public modality:ABSTRACT [val] @@ -107,10 +95,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.X> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>, other:.X) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -147,14 +131,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .X?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.String BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in ' diff --git a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.ir.txt b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.ir.txt index 3d2c8085589..799bb73a0b2 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.ir.txt +++ b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.ir.txt @@ -65,10 +65,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt overridden: public final fun (): kotlin.Int declared in .X $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .X - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>, other:.X) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .X): kotlin.Int declared in .X @@ -79,14 +75,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .X $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .X - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .X?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .X?>? declared in .X - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .X @@ -117,10 +105,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>, other:.X) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -131,14 +115,6 @@ FILE fqName: fileName:/enumEntryAsReceiver.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .X?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.X> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.X>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.kt b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.kt index 3192974d364..cb4f97fd947 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.kt +++ b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.kt @@ -1,6 +1,3 @@ -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize (K1), getDeclaringClass (K1), clone (K2) - enum class X { B { diff --git a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.sig.kt.txt b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.sig.kt.txt index 8da5513c13d..f92a94f8ae6 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.sig.kt.txt +++ b/compiler/testData/ir/irText/expressions/enumEntryAsReceiver.sig.kt.txt @@ -51,24 +51,14 @@ abstract enum class X : Enum { // Public signature: /X.B..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: X.B#clone(){}kotlin.Any - // Public signature: /X.B..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: X.B#compareTo(X){} - // Public signature: /X.B..compareTo|1261254128967309541[0] - // Public signature debug description: compareTo(X){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: X.B#compareTo(X){}kotlin.Int // Public signature: /X.B..compareTo|-4945307460605318887[0] // Public signature debug description: compareTo(X){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: X.B#equals(kotlin.Any?){} - // Public signature: /X.B..equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: X.B#compareTo(X){} + // Public signature: /X.B..compareTo|1261254128967309541[0] + // Public signature debug description: compareTo(X){} /* fake */ override operator fun compareTo(other: X): Int // CHECK JVM_IR: @@ -76,9 +66,9 @@ abstract enum class X : Enum { // Public signature: /X.B..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: X.B#hashCode(){} - // Public signature: /X.B..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: X.B#equals(kotlin.Any?){} + // Public signature: /X.B..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -86,9 +76,9 @@ abstract enum class X : Enum { // Public signature: /X.B..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: X.B#toString(){} - // Public signature: /X.B..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: X.B#hashCode(){} + // Public signature: /X.B..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -96,9 +86,9 @@ abstract enum class X : Enum { // Public signature: /X.B..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: X.B{}name - // Public signature: /X.B..name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: X.B#toString(){} + // Public signature: /X.B..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -111,9 +101,9 @@ abstract enum class X : Enum { // Public signature: /X.B..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: X.B{}ordinal - // Public signature: /X.B..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: X.B#(){} + // Public signature: /X.B..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -126,9 +116,9 @@ abstract enum class X : Enum { // Public signature: /X.B..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: X#valueOf#static(kotlin.String){} - // Public signature: /X.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: X.B#(){} + // Public signature: /X.B..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -138,9 +128,9 @@ abstract enum class X : Enum { // Public signature: /X.valueOf|5795127078210310399[0] // Public signature debug description: valueOf#static(kotlin.String){}X // CHECK JS_IR NATIVE: - // Mangled name: X#values#static(){} - // Public signature: /X.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: X#valueOf#static(kotlin.String){} + // Public signature: /X.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): X // CHECK JVM_IR: @@ -148,29 +138,19 @@ abstract enum class X : Enum { // Public signature: /X.values|-7109739533511471403[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: X#compareTo(X){} - // Public signature: /X.compareTo|1261254128967309541[0] - // Public signature debug description: compareTo(X){} + // Mangled name: X#values#static(){} + // Public signature: /X.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: X#clone(){}kotlin.Any - // Public signature: /X.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: X#equals(kotlin.Any?){} - // Public signature: /X.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: X#compareTo(X){}kotlin.Int // Public signature: /X.compareTo|-4945307460605318887[0] // Public signature debug description: compareTo(X){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: X#hashCode(){} - // Public signature: /X.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: X#compareTo(X){} + // Public signature: /X.compareTo|1261254128967309541[0] + // Public signature debug description: compareTo(X){} /* fake */ override operator fun compareTo(other: X): Int // CHECK JVM_IR: @@ -178,9 +158,9 @@ abstract enum class X : Enum { // Public signature: /X.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: X#toString(){} - // Public signature: /X.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: X#equals(kotlin.Any?){} + // Public signature: /X.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -188,9 +168,9 @@ abstract enum class X : Enum { // Public signature: /X.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: X#static{}entries - // Public signature: /X.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: X#hashCode(){} + // Public signature: /X.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -198,9 +178,9 @@ abstract enum class X : Enum { // Public signature: /X.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: X##static(){} - // Public signature: /X.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: X#toString(){} + // Public signature: /X.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -213,9 +193,9 @@ abstract enum class X : Enum { // Public signature: /X.entries.|6681560497291336349[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: X#(){} - // Public signature: /X.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: X##static(){} + // Public signature: /X.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -228,9 +208,9 @@ abstract enum class X : Enum { // Public signature: /X.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: X#(){} - // Public signature: /X.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: X#(){} + // Public signature: /X.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -243,9 +223,9 @@ abstract enum class X : Enum { // Public signature: /X.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: X#(){} - // Public signature: /X.value.|3260093555963109437[0] - // Public signature debug description: (){} + // Mangled name: X#(){} + // Public signature: /X.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int // CHECK: @@ -257,6 +237,10 @@ abstract enum class X : Enum { // Mangled name: X#(){}kotlin.Function0 // Public signature: /X.value.|-2160558915408168462[0] // Public signature debug description: (){}kotlin.Function0 + // CHECK JS_IR NATIVE: + // Mangled name: X#(){} + // Public signature: /X.value.|3260093555963109437[0] + // Public signature debug description: (){} abstract get } @@ -265,5 +249,9 @@ abstract enum class X : Enum { // Mangled name: #box(){}kotlin.String // Public signature: /box|-9347091776561469[0] // Public signature debug description: box(){}kotlin.String +// CHECK JS_IR NATIVE: +// Mangled name: #box(){} +// Public signature: /box|2173511048851971368[0] +// Public signature debug description: box(){} fun box(): String diff --git a/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.fir.ir.txt b/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.fir.ir.txt index 17fd118e406..e268c0295ee 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.fir.ir.txt @@ -109,10 +109,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt RETURN type=kotlin.Nothing from='public final fun (): .MyEnum.Z.anObject. declared in .MyEnum.Z' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:anObject type:.MyEnum.Z.anObject. visibility:private [final]' type=.MyEnum.Z.anObject. origin=null receiver: GET_VAR ': .MyEnum.Z declared in .MyEnum.Z.' type=.MyEnum.Z origin=null - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .MyEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .MyEnum): kotlin.Int declared in .MyEnum @@ -149,14 +145,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt overridden: public final fun (): kotlin.Int declared in .MyEnum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? declared in .MyEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .MyEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.MyEnum> SYNTHETIC_BODY kind=ENUM_VALUES FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:.MyEnum @@ -166,10 +154,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.MyEnum> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -206,11 +190,3 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> diff --git a/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.ir.txt b/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.ir.txt index 252b6037c24..33e5a481cd7 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.ir.txt +++ b/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.ir.txt @@ -128,10 +128,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt overridden: public final fun (): kotlin.Int declared in .MyEnum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .MyEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .MyEnum): kotlin.Int declared in .MyEnum @@ -142,14 +138,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .MyEnum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .MyEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? declared in .MyEnum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .MyEnum @@ -176,10 +164,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>, other:.MyEnum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -190,14 +174,6 @@ FILE fqName: fileName:/enumEntryReferenceFromEnumEntryClass.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .MyEnum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.MyEnum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.MyEnum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.kt b/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.kt index ad79fd1ee09..871878585a5 100644 --- a/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.kt +++ b/compiler/testData/ir/irText/expressions/enumEntryReferenceFromEnumEntryClass.kt @@ -1,11 +1,6 @@ -// IGNORE_BACKEND: JS_IR - // SKIP_SIGNATURE_DUMP // ^ Types of properties of anonymous classes generated by K1 and K2 are different -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - enum class MyEnum { Z { var counter = 0 diff --git a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.ir.txt b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.ir.txt index 083c58b52fa..2c1e0dbb024 100644 --- a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.fir.ir.txt @@ -18,10 +18,6 @@ FILE fqName: fileName:/exhaustiveWhenElseBranch.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.A> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>, other:.A) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -58,14 +54,6 @@ FILE fqName: fileName:/exhaustiveWhenElseBranch.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN name:testVariableAssignment_throws visibility:public modality:FINAL <> (a:.A) returnType:kotlin.Unit VALUE_PARAMETER name:a index:0 type:.A BLOCK_BODY diff --git a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.ir.txt b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.ir.txt index d54fae76a08..58487dbfa2b 100644 --- a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.ir.txt +++ b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.ir.txt @@ -27,10 +27,6 @@ FILE fqName: fileName:/exhaustiveWhenElseBranch.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>, other:.A) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -41,14 +37,6 @@ FILE fqName: fileName:/exhaustiveWhenElseBranch.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .A?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.A> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.A>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt index 2879fac0cb3..82a54382033 100644 --- a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt +++ b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - enum class A { V1 } fun testVariableAssignment_throws(a: A) { diff --git a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.sig.kt.txt b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.sig.kt.txt index 5a33135aa1b..18346697af2 100644 --- a/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.sig.kt.txt +++ b/compiler/testData/ir/irText/expressions/exhaustiveWhenElseBranch.sig.kt.txt @@ -32,24 +32,14 @@ enum class A : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: A#clone(){}kotlin.Any - // Public signature: /A.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: A#compareTo(A){} - // Public signature: /A.compareTo|5303387127644845713[0] - // Public signature debug description: compareTo(A){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: A#compareTo(A){}kotlin.Int // Public signature: /A.compareTo|-315052537630360750[0] // Public signature debug description: compareTo(A){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A#equals(kotlin.Any?){} - // Public signature: /A.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: A#compareTo(A){} + // Public signature: /A.compareTo|5303387127644845713[0] + // Public signature debug description: compareTo(A){} /* fake */ override operator fun compareTo(other: A): Int // CHECK JVM_IR: @@ -57,9 +47,9 @@ enum class A : Enum { // Public signature: /A.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: A#hashCode(){} - // Public signature: /A.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: A#equals(kotlin.Any?){} + // Public signature: /A.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -67,9 +57,9 @@ enum class A : Enum { // Public signature: /A.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A#toString(){} - // Public signature: /A.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: A#hashCode(){} + // Public signature: /A.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -77,9 +67,9 @@ enum class A : Enum { // Public signature: /A.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A#static{}entries - // Public signature: /A.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: A#toString(){} + // Public signature: /A.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -92,9 +82,9 @@ enum class A : Enum { // Public signature: /A.entries.|3279885591622842062[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: A{}name - // Public signature: /A.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: A##static(){} + // Public signature: /A.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -107,9 +97,9 @@ enum class A : Enum { // Public signature: /A.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: A{}ordinal - // Public signature: /A.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: A#(){} + // Public signature: /A.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -122,9 +112,9 @@ enum class A : Enum { // Public signature: /A.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: #testAnnotated_throwsJvm(A){} - // Public signature: /testAnnotated_throwsJvm|4125008918330317559[0] - // Public signature debug description: testAnnotated_throwsJvm(A){} + // Mangled name: A#(){} + // Public signature: /A.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -140,9 +130,9 @@ fun testAnnotated_throwsJvm(a: A): Unit // Public signature: /testExpression_throws|-3237050390749274330[0] // Public signature debug description: testExpression_throws(A){}kotlin.Int // CHECK JS_IR NATIVE: -// Mangled name: #testIfTheElseAnnotated_throwsJvm(A;kotlin.Boolean){} -// Public signature: /testIfTheElseAnnotated_throwsJvm|2206683935431102388[0] -// Public signature debug description: testIfTheElseAnnotated_throwsJvm(A;kotlin.Boolean){} +// Mangled name: #testExpression_throws(A){} +// Public signature: /testExpression_throws|-7500665949356885656[0] +// Public signature debug description: testExpression_throws(A){} fun testExpression_throws(a: A): Int // CHECK: diff --git a/compiler/testData/ir/irText/expressions/objectAsCallable.fir.ir.txt b/compiler/testData/ir/irText/expressions/objectAsCallable.fir.ir.txt index 8968a6fa512..71bff6d0850 100644 --- a/compiler/testData/ir/irText/expressions/objectAsCallable.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/objectAsCallable.fir.ir.txt @@ -37,10 +37,6 @@ FILE fqName: fileName:/objectAsCallable.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.En> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -77,14 +73,6 @@ FILE fqName: fileName:/objectAsCallable.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN name:invoke visibility:public modality:FINAL <> ($receiver:.A, i:kotlin.Int) returnType:kotlin.Int [operator] $receiver: VALUE_PARAMETER name: type:.A VALUE_PARAMETER name:i index:0 type:kotlin.Int diff --git a/compiler/testData/ir/irText/expressions/objectAsCallable.ir.txt b/compiler/testData/ir/irText/expressions/objectAsCallable.ir.txt index f07c3ca00a2..e053125a5c2 100644 --- a/compiler/testData/ir/irText/expressions/objectAsCallable.ir.txt +++ b/compiler/testData/ir/irText/expressions/objectAsCallable.ir.txt @@ -46,10 +46,6 @@ FILE fqName: fileName:/objectAsCallable.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -60,14 +56,6 @@ FILE fqName: fileName:/objectAsCallable.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/objectAsCallable.kt b/compiler/testData/ir/irText/expressions/objectAsCallable.kt index 81b2d16eb1f..f9d8fbad3de 100644 --- a/compiler/testData/ir/irText/expressions/objectAsCallable.kt +++ b/compiler/testData/ir/irText/expressions/objectAsCallable.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - object A enum class En { X } diff --git a/compiler/testData/ir/irText/expressions/objectAsCallable.sig.kt.txt b/compiler/testData/ir/irText/expressions/objectAsCallable.sig.kt.txt index 4a0784dd2f2..5ce029bffff 100644 --- a/compiler/testData/ir/irText/expressions/objectAsCallable.sig.kt.txt +++ b/compiler/testData/ir/irText/expressions/objectAsCallable.sig.kt.txt @@ -62,24 +62,14 @@ enum class En : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: En#clone(){}kotlin.Any - // Public signature: /En.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: En#compareTo(En){} - // Public signature: /En.compareTo|3555292261046836181[0] - // Public signature debug description: compareTo(En){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: En#compareTo(En){}kotlin.Int // Public signature: /En.compareTo|7450321438177070471[0] // Public signature debug description: compareTo(En){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#equals(kotlin.Any?){} - // Public signature: /En.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: En#compareTo(En){} + // Public signature: /En.compareTo|3555292261046836181[0] + // Public signature debug description: compareTo(En){} /* fake */ override operator fun compareTo(other: En): Int // CHECK JVM_IR: @@ -87,9 +77,9 @@ enum class En : Enum { // Public signature: /En.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: En#hashCode(){} - // Public signature: /En.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: En#equals(kotlin.Any?){} + // Public signature: /En.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -97,9 +87,9 @@ enum class En : Enum { // Public signature: /En.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#toString(){} - // Public signature: /En.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: En#hashCode(){} + // Public signature: /En.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -107,9 +97,9 @@ enum class En : Enum { // Public signature: /En.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En#static{}entries - // Public signature: /En.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: En#toString(){} + // Public signature: /En.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -122,9 +112,9 @@ enum class En : Enum { // Public signature: /En.entries.|7832995474718587298[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: En{}name - // Public signature: /En.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: En##static(){} + // Public signature: /En.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -137,9 +127,9 @@ enum class En : Enum { // Public signature: /En.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En{}ordinal - // Public signature: /En.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: En#(){} + // Public signature: /En.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -152,8 +142,9 @@ enum class En : Enum { // Public signature: /En.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A - // Public signature: /A|null[0] + // Mangled name: En#(){} + // Public signature: /En.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -175,14 +166,18 @@ object A { // Public signature: /invoke|503088749404942002[0] // Public signature debug description: invoke@A(kotlin.Int){}kotlin.Int // CHECK JS_IR NATIVE: -// Mangled name: #invoke@En(kotlin.Int){} -// Public signature: /invoke|3683819464130194669[0] -// Public signature debug description: invoke@En(kotlin.Int){} +// Mangled name: #invoke@A(kotlin.Int){} +// Public signature: /invoke|7500175485654527353[0] +// Public signature debug description: invoke@A(kotlin.Int){} operator fun A.invoke(i: Int): Int // CHECK JVM_IR: // Mangled name: #invoke@En(kotlin.Int){}kotlin.Int // Public signature: /invoke|-7019391879885662247[0] // Public signature debug description: invoke@En(kotlin.Int){}kotlin.Int +// CHECK JS_IR NATIVE: +// Mangled name: #invoke@En(kotlin.Int){} +// Public signature: /invoke|3683819464130194669[0] +// Public signature debug description: invoke@En(kotlin.Int){} operator fun En.invoke(i: Int): Int diff --git a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.fir.ir.txt b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.fir.ir.txt index a44b480db1a..be5f9e2f24a 100644 --- a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.fir.ir.txt @@ -52,10 +52,6 @@ FILE fqName: fileName:/temporaryInEnumEntryInitializer.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.En> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -92,11 +88,3 @@ FILE fqName: fileName:/temporaryInEnumEntryInitializer.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> diff --git a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.ir.txt b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.ir.txt index c665d0f12a3..b3d5f9552cd 100644 --- a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.ir.txt +++ b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.ir.txt @@ -61,10 +61,6 @@ FILE fqName: fileName:/temporaryInEnumEntryInitializer.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -75,14 +71,6 @@ FILE fqName: fileName:/temporaryInEnumEntryInitializer.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt index 4843979ae64..e1588e50e33 100644 --- a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt +++ b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - val n: Any? = null enum class En(val x: String?) { diff --git a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.sig.kt.txt b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.sig.kt.txt index bd34114e7f0..b4cd22821b0 100644 --- a/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.sig.kt.txt +++ b/compiler/testData/ir/irText/expressions/temporaryInEnumEntryInitializer.sig.kt.txt @@ -62,24 +62,14 @@ enum class En : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: En#clone(){}kotlin.Any - // Public signature: /En.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: En#compareTo(En){} - // Public signature: /En.compareTo|3555292261046836181[0] - // Public signature debug description: compareTo(En){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: En#compareTo(En){}kotlin.Int // Public signature: /En.compareTo|7450321438177070471[0] // Public signature debug description: compareTo(En){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#equals(kotlin.Any?){} - // Public signature: /En.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: En#compareTo(En){} + // Public signature: /En.compareTo|3555292261046836181[0] + // Public signature debug description: compareTo(En){} /* fake */ override operator fun compareTo(other: En): Int // CHECK JVM_IR: @@ -87,9 +77,9 @@ enum class En : Enum { // Public signature: /En.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: En#hashCode(){} - // Public signature: /En.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: En#equals(kotlin.Any?){} + // Public signature: /En.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -97,9 +87,9 @@ enum class En : Enum { // Public signature: /En.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#toString(){} - // Public signature: /En.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: En#hashCode(){} + // Public signature: /En.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -107,9 +97,9 @@ enum class En : Enum { // Public signature: /En.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En#static{}entries - // Public signature: /En.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: En#toString(){} + // Public signature: /En.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -122,9 +112,9 @@ enum class En : Enum { // Public signature: /En.entries.|7832995474718587298[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: En{}name - // Public signature: /En.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: En##static(){} + // Public signature: /En.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -137,9 +127,9 @@ enum class En : Enum { // Public signature: /En.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En{}ordinal - // Public signature: /En.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: En#(){} + // Public signature: /En.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -151,6 +141,10 @@ enum class En : Enum { // Mangled name: En#(){}kotlin.Int // Public signature: /En.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: En#(){} + // Public signature: /En.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/expressions/values.fir.ir.txt b/compiler/testData/ir/irText/expressions/values.fir.ir.txt index 1f37d600f80..05d1b1b62d8 100644 --- a/compiler/testData/ir/irText/expressions/values.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/values.fir.ir.txt @@ -18,10 +18,6 @@ FILE fqName: fileName:/values.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.Enum> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Enum>, other:.Enum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -58,14 +54,6 @@ FILE fqName: fileName:/values.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Enum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> CLASS OBJECT name:A modality:FINAL visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.A CONSTRUCTOR visibility:private <> () returnType:.A [primary] diff --git a/compiler/testData/ir/irText/expressions/values.ir.txt b/compiler/testData/ir/irText/expressions/values.ir.txt index 7352254dd3b..5ec53b7051c 100644 --- a/compiler/testData/ir/irText/expressions/values.ir.txt +++ b/compiler/testData/ir/irText/expressions/values.ir.txt @@ -27,10 +27,6 @@ FILE fqName: fileName:/values.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Enum>, other:.Enum) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -41,14 +37,6 @@ FILE fqName: fileName:/values.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Enum?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Enum> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Enum>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/values.kt b/compiler/testData/ir/irText/expressions/values.kt index d19657bce99..8be84e0d350 100644 --- a/compiler/testData/ir/irText/expressions/values.kt +++ b/compiler/testData/ir/irText/expressions/values.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - enum class Enum { A } object A val a = 0 diff --git a/compiler/testData/ir/irText/expressions/values.sig.kt.txt b/compiler/testData/ir/irText/expressions/values.sig.kt.txt index 3bdd9f2b636..6a859171fe4 100644 --- a/compiler/testData/ir/irText/expressions/values.sig.kt.txt +++ b/compiler/testData/ir/irText/expressions/values.sig.kt.txt @@ -71,24 +71,14 @@ enum class Enum : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: Enum#clone(){}kotlin.Any - // Public signature: /Enum.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Enum#compareTo(Enum){} - // Public signature: /Enum.compareTo|-4443884423672358900[0] - // Public signature debug description: compareTo(Enum){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Enum#compareTo(Enum){}kotlin.Int // Public signature: /Enum.compareTo|5116290257178107514[0] // Public signature debug description: compareTo(Enum){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Enum#equals(kotlin.Any?){} - // Public signature: /Enum.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: Enum#compareTo(Enum){} + // Public signature: /Enum.compareTo|-4443884423672358900[0] + // Public signature debug description: compareTo(Enum){} /* fake */ override operator fun compareTo(other: Enum): Int // CHECK JVM_IR: @@ -96,9 +86,9 @@ enum class Enum : Enum { // Public signature: /Enum.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Enum#hashCode(){} - // Public signature: /Enum.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: Enum#equals(kotlin.Any?){} + // Public signature: /Enum.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -106,9 +96,9 @@ enum class Enum : Enum { // Public signature: /Enum.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Enum#toString(){} - // Public signature: /Enum.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Enum#hashCode(){} + // Public signature: /Enum.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -116,9 +106,9 @@ enum class Enum : Enum { // Public signature: /Enum.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Enum#static{}entries - // Public signature: /Enum.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: Enum#toString(){} + // Public signature: /Enum.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -131,9 +121,9 @@ enum class Enum : Enum { // Public signature: /Enum.entries.|-2213733217881289366[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: Enum{}name - // Public signature: /Enum.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: Enum##static(){} + // Public signature: /Enum.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -146,9 +136,9 @@ enum class Enum : Enum { // Public signature: /Enum.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Enum{}ordinal - // Public signature: /Enum.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: Enum#(){} + // Public signature: /Enum.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -161,8 +151,9 @@ enum class Enum : Enum { // Public signature: /Enum.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: A - // Public signature: /A|null[0] + // Mangled name: Enum#(){} + // Public signature: /Enum.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -184,9 +175,9 @@ object A { // Public signature: /test1|2327660247328941000[0] // Public signature debug description: test1(){}Enum // CHECK JS_IR NATIVE: -// Mangled name: #test2(){} -// Public signature: /test2|4279114864133353152[0] -// Public signature debug description: test2(){} +// Mangled name: #test1(){} +// Public signature: /test1|4297044443957252634[0] +// Public signature debug description: test1(){} fun test1(): Enum // CHECK JVM_IR: @@ -194,9 +185,9 @@ fun test1(): Enum // Public signature: /test2|-3343341839692584744[0] // Public signature debug description: test2(){}A // CHECK JS_IR NATIVE: -// Mangled name: #test3(){} -// Public signature: /test3|-3759735065270951803[0] -// Public signature debug description: test3(){} +// Mangled name: #test2(){} +// Public signature: /test2|4279114864133353152[0] +// Public signature debug description: test2(){} fun test2(): A // CHECK JVM_IR: @@ -204,14 +195,18 @@ fun test2(): A // Public signature: /test3|-1546181855196587449[0] // Public signature debug description: test3(){}kotlin.Int // CHECK JS_IR NATIVE: -// Mangled name: #test4(){} -// Public signature: /test4|5588455914500386239[0] -// Public signature debug description: test4(){} +// Mangled name: #test3(){} +// Public signature: /test3|-3759735065270951803[0] +// Public signature debug description: test3(){} fun test3(): Int // CHECK JVM_IR: // Mangled name: #test4(){}Z.Companion // Public signature: /test4|5728287137046346436[0] // Public signature debug description: test4(){}Z.Companion +// CHECK JS_IR NATIVE: +// Mangled name: #test4(){} +// Public signature: /test4|5588455914500386239[0] +// Public signature debug description: test4(){} fun test4(): Companion diff --git a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.ir.txt b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.ir.txt index 6127cea77cf..5578169cf4a 100644 --- a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.ir.txt +++ b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.fir.ir.txt @@ -24,10 +24,6 @@ FILE fqName: fileName:/whenSmartCastToEnum.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.En> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -64,14 +60,6 @@ FILE fqName: fileName:/whenSmartCastToEnum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit BLOCK_BODY VAR name:r type:kotlin.String [var] diff --git a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.ir.txt b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.ir.txt index 4554758142d..5b0e0217f87 100644 --- a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.ir.txt +++ b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.ir.txt @@ -33,10 +33,6 @@ FILE fqName: fileName:/whenSmartCastToEnum.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>, other:.En) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -47,14 +43,6 @@ FILE fqName: fileName:/whenSmartCastToEnum.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .En?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.En> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.En>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.kt b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.kt index 36885e905cf..f6f7c3ad1a2 100644 --- a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.kt +++ b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.kt @@ -1,8 +1,3 @@ -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE - enum class En { A, B, C } fun test() { diff --git a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.sig.kt.txt b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.sig.kt.txt index c85cd23428f..f36b7a468ed 100644 --- a/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.sig.kt.txt +++ b/compiler/testData/ir/irText/expressions/whenSmartCastToEnum.sig.kt.txt @@ -42,24 +42,14 @@ enum class En : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: En#clone(){}kotlin.Any - // Public signature: /En.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: En#compareTo(En){} - // Public signature: /En.compareTo|3555292261046836181[0] - // Public signature debug description: compareTo(En){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: En#compareTo(En){}kotlin.Int // Public signature: /En.compareTo|7450321438177070471[0] // Public signature debug description: compareTo(En){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#equals(kotlin.Any?){} - // Public signature: /En.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: En#compareTo(En){} + // Public signature: /En.compareTo|3555292261046836181[0] + // Public signature debug description: compareTo(En){} /* fake */ override operator fun compareTo(other: En): Int // CHECK JVM_IR: @@ -67,9 +57,9 @@ enum class En : Enum { // Public signature: /En.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: En#hashCode(){} - // Public signature: /En.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: En#equals(kotlin.Any?){} + // Public signature: /En.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -77,9 +67,9 @@ enum class En : Enum { // Public signature: /En.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: En#toString(){} - // Public signature: /En.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: En#hashCode(){} + // Public signature: /En.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -87,9 +77,9 @@ enum class En : Enum { // Public signature: /En.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En#static{}entries - // Public signature: /En.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: En#toString(){} + // Public signature: /En.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -102,9 +92,9 @@ enum class En : Enum { // Public signature: /En.entries.|7832995474718587298[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: En{}name - // Public signature: /En.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: En##static(){} + // Public signature: /En.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -117,9 +107,9 @@ enum class En : Enum { // Public signature: /En.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: En{}ordinal - // Public signature: /En.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: En#(){} + // Public signature: /En.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -132,9 +122,9 @@ enum class En : Enum { // Public signature: /En.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: #test(){} - // Public signature: /test|6620506149988718649[0] - // Public signature debug description: test(){} + // Mangled name: En#(){} + // Public signature: /En.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.fir.ir.txt b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.fir.ir.txt index bd528d22a5c..b1c48e97794 100644 --- a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.fir.ir.txt +++ b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.fir.ir.txt @@ -75,10 +75,6 @@ FILE fqName: fileName:/lambdaInEnumEntryConstructorCall.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.ConfigurationParameter> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>, other:.ConfigurationParameter) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -115,11 +111,3 @@ FILE fqName: fileName:/lambdaInEnumEntryConstructorCall.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .ConfigurationParameter?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> diff --git a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.ir.txt b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.ir.txt index 41721ce33fc..12482390901 100644 --- a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.ir.txt +++ b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.ir.txt @@ -84,10 +84,6 @@ FILE fqName: fileName:/lambdaInEnumEntryConstructorCall.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>, other:.ConfigurationParameter) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -98,14 +94,6 @@ FILE fqName: fileName:/lambdaInEnumEntryConstructorCall.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .ConfigurationParameter?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.ConfigurationParameter> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.ConfigurationParameter>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt index f058d7fbbe2..1762962a3f7 100644 --- a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt +++ b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt @@ -1,6 +1,4 @@ // WITH_STDLIB -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone class Wrapper(var baseUrl: String) diff --git a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.sig.kt.txt b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.sig.kt.txt index 57cc07b77bc..4d11dcc01fa 100644 --- a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.sig.kt.txt +++ b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.sig.kt.txt @@ -64,24 +64,14 @@ enum class ConfigurationParameter : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: ConfigurationParameter#clone(){}kotlin.Any - // Public signature: /ConfigurationParameter.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter#compareTo(ConfigurationParameter){} - // Public signature: /ConfigurationParameter.compareTo|1827634897792549080[0] - // Public signature debug description: compareTo(ConfigurationParameter){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: ConfigurationParameter#compareTo(ConfigurationParameter){}kotlin.Int // Public signature: /ConfigurationParameter.compareTo|-5479522582886187389[0] // Public signature debug description: compareTo(ConfigurationParameter){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter#equals(kotlin.Any?){} - // Public signature: /ConfigurationParameter.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: ConfigurationParameter#compareTo(ConfigurationParameter){} + // Public signature: /ConfigurationParameter.compareTo|1827634897792549080[0] + // Public signature debug description: compareTo(ConfigurationParameter){} /* fake */ override operator fun compareTo(other: ConfigurationParameter): Int // CHECK JVM_IR: @@ -89,9 +79,9 @@ enum class ConfigurationParameter : Enum { // Public signature: /ConfigurationParameter.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter#hashCode(){} - // Public signature: /ConfigurationParameter.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: ConfigurationParameter#equals(kotlin.Any?){} + // Public signature: /ConfigurationParameter.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -99,9 +89,9 @@ enum class ConfigurationParameter : Enum { // Public signature: /ConfigurationParameter.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter#toString(){} - // Public signature: /ConfigurationParameter.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: ConfigurationParameter#hashCode(){} + // Public signature: /ConfigurationParameter.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -109,9 +99,9 @@ enum class ConfigurationParameter : Enum { // Public signature: /ConfigurationParameter.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter#static{}entries - // Public signature: /ConfigurationParameter.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: ConfigurationParameter#toString(){} + // Public signature: /ConfigurationParameter.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -124,9 +114,9 @@ enum class ConfigurationParameter : Enum { // Public signature: /ConfigurationParameter.entries.|-1947990751381640787[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter{}name - // Public signature: /ConfigurationParameter.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: ConfigurationParameter##static(){} + // Public signature: /ConfigurationParameter.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -139,9 +129,9 @@ enum class ConfigurationParameter : Enum { // Public signature: /ConfigurationParameter.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: ConfigurationParameter{}ordinal - // Public signature: /ConfigurationParameter.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: ConfigurationParameter#(){} + // Public signature: /ConfigurationParameter.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -153,6 +143,10 @@ enum class ConfigurationParameter : Enum { // Mangled name: ConfigurationParameter#(){}kotlin.Int // Public signature: /ConfigurationParameter.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: ConfigurationParameter#(){} + // Public signature: /ConfigurationParameter.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.fir.ir.txt b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.fir.ir.txt index d72d9eedbc3..a827b6ffd79 100644 --- a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.fir.ir.txt +++ b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.fir.ir.txt @@ -34,10 +34,6 @@ FILE fqName: fileName:/thisInEnumConstructor.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.EE> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.EE>, other:.EE) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -74,11 +70,3 @@ FILE fqName: fileName:/thisInEnumConstructor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .EE?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> diff --git a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.ir.txt b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.ir.txt index 777e4bd052a..1951b4841ec 100644 --- a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.ir.txt +++ b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.ir.txt @@ -43,10 +43,6 @@ FILE fqName: fileName:/thisInEnumConstructor.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.EE>, other:.EE) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -57,14 +53,6 @@ FILE fqName: fileName:/thisInEnumConstructor.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .EE?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.EE> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.EE>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.kt b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.kt index 44ac1adfb21..84cac19ce8d 100644 --- a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.kt +++ b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.kt @@ -1,8 +1,4 @@ // WITH_STDLIB -// IGNORE_BACKEND: JS_IR - -// KT-61141: absent enum fake_overrides: finalize, getDeclaringClass, clone -// IGNORE_BACKEND: NATIVE enum class EE(val myName: String = this.toString().lowercase()) { ENTRY; diff --git a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.sig.kt.txt b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.sig.kt.txt index b6e7c6c70f3..906cfd7b998 100644 --- a/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.sig.kt.txt +++ b/compiler/testData/ir/irText/firProblems/thisInEnumConstructor.sig.kt.txt @@ -47,24 +47,14 @@ enum class EE : Enum { // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: EE#clone(){}kotlin.Any - // Public signature: /EE.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: EE#compareTo(EE){} - // Public signature: /EE.compareTo|599571267222383379[0] - // Public signature debug description: compareTo(EE){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: EE#compareTo(EE){}kotlin.Int // Public signature: /EE.compareTo|2516455132911655234[0] // Public signature debug description: compareTo(EE){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: EE#equals(kotlin.Any?){} - // Public signature: /EE.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: EE#compareTo(EE){} + // Public signature: /EE.compareTo|599571267222383379[0] + // Public signature debug description: compareTo(EE){} /* fake */ override operator fun compareTo(other: EE): Int // CHECK JVM_IR: @@ -72,9 +62,9 @@ enum class EE : Enum { // Public signature: /EE.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: EE#hashCode(){} - // Public signature: /EE.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: EE#equals(kotlin.Any?){} + // Public signature: /EE.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -82,9 +72,9 @@ enum class EE : Enum { // Public signature: /EE.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: EE#toString(){} - // Public signature: /EE.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: EE#hashCode(){} + // Public signature: /EE.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -92,9 +82,9 @@ enum class EE : Enum { // Public signature: /EE.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: EE#static{}entries - // Public signature: /EE.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: EE#toString(){} + // Public signature: /EE.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -107,9 +97,9 @@ enum class EE : Enum { // Public signature: /EE.entries.|280536622699226117[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: EE{}name - // Public signature: /EE.name|4231860309499509769[0] - // Public signature debug description: {}name + // Mangled name: EE##static(){} + // Public signature: /EE.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -122,9 +112,9 @@ enum class EE : Enum { // Public signature: /EE.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: EE{}ordinal - // Public signature: /EE.ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: EE#(){} + // Public signature: /EE.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -136,6 +126,10 @@ enum class EE : Enum { // Mangled name: EE#(){}kotlin.Int // Public signature: /EE.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: EE#(){} + // Public signature: /EE.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/testData/ir/irText/singletons/enumEntry.fir.ir.txt b/compiler/testData/ir/irText/singletons/enumEntry.fir.ir.txt index 967b92e1218..c7d632830a5 100644 --- a/compiler/testData/ir/irText/singletons/enumEntry.fir.ir.txt +++ b/compiler/testData/ir/irText/singletons/enumEntry.fir.ir.txt @@ -43,10 +43,6 @@ FILE fqName: fileName:/enumEntry.kt overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .Z - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>, other:.Z) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .Z): kotlin.Int declared in .Z @@ -83,14 +79,6 @@ FILE fqName: fileName:/enumEntry.kt overridden: public final fun (): kotlin.Int declared in .Z $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Z?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Z?>? declared in .Z - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .Z - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<.Z> SYNTHETIC_BODY kind=ENUM_VALUES FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:.Z @@ -100,10 +88,6 @@ FILE fqName: fileName:/enumEntry.kt FUN ENUM_CLASS_SPECIAL_MEMBER name: visibility:public modality:FINAL <> () returnType:kotlin.enums.EnumEntries<.Z> correspondingProperty: PROPERTY ENUM_CLASS_SPECIAL_MEMBER name:entries visibility:public modality:FINAL [val] SYNTHETIC_BODY kind=ENUM_ENTRIES - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>, other:.Z) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -140,11 +124,3 @@ FILE fqName: fileName:/enumEntry.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Z?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> diff --git a/compiler/testData/ir/irText/singletons/enumEntry.ir.txt b/compiler/testData/ir/irText/singletons/enumEntry.ir.txt index 3b3ad78e4c4..df4cdfd7be8 100644 --- a/compiler/testData/ir/irText/singletons/enumEntry.ir.txt +++ b/compiler/testData/ir/irText/singletons/enumEntry.ir.txt @@ -62,10 +62,6 @@ FILE fqName: fileName:/enumEntry.kt overridden: public final fun (): kotlin.Int declared in .Z $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in .Z - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>, other:.Z) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: .Z): kotlin.Int declared in .Z @@ -76,14 +72,6 @@ FILE fqName: fileName:/enumEntry.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in .Z $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in .Z - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Z?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Z?>? declared in .Z - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in .Z @@ -110,10 +98,6 @@ FILE fqName: fileName:/enumEntry.kt overridden: public final fun (): kotlin.Int declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Any [fake_override] - overridden: - protected final fun clone (): kotlin.Any declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN FAKE_OVERRIDE name:compareTo visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>, other:.Z) returnType:kotlin.Int [fake_override,operator] overridden: public final fun compareTo (other: E of kotlin.Enum): kotlin.Int declared in kotlin.Enum @@ -124,14 +108,6 @@ FILE fqName: fileName:/enumEntry.kt public final fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Enum $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> VALUE_PARAMETER name:other index:0 type:kotlin.Any? - FUN FAKE_OVERRIDE name:finalize visibility:protected/*protected and package*/ modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Unit [fake_override] - overridden: - protected/*protected and package*/ final fun finalize (): kotlin.Unit declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> - FUN FAKE_OVERRIDE name:getDeclaringClass visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:@[FlexibleNullability] java.lang.Class<@[FlexibleNullability] .Z?>? [fake_override] - overridden: - public final fun getDeclaringClass (): @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] E of kotlin.Enum?>? declared in kotlin.Enum - $this: VALUE_PARAMETER name: type:kotlin.Enum<.Z> FUN FAKE_OVERRIDE name:hashCode visibility:public modality:FINAL <> ($this:kotlin.Enum<.Z>) returnType:kotlin.Int [fake_override] overridden: public final fun hashCode (): kotlin.Int declared in kotlin.Enum diff --git a/compiler/testData/ir/irText/singletons/enumEntry.kt b/compiler/testData/ir/irText/singletons/enumEntry.kt index 9dea239eed4..a09b131051f 100644 --- a/compiler/testData/ir/irText/singletons/enumEntry.kt +++ b/compiler/testData/ir/irText/singletons/enumEntry.kt @@ -1,6 +1,3 @@ -// IGNORE_BACKEND: JS_IR NATIVE -// ^ KT-61141: absent enum fake_overrides: finalize (K1), getDeclaringClass (K1), clone (K2) - enum class Z { ENTRY { fun test() {} diff --git a/compiler/testData/ir/irText/singletons/enumEntry.sig.kt.txt b/compiler/testData/ir/irText/singletons/enumEntry.sig.kt.txt index 3711f0c483d..b71799ecc76 100644 --- a/compiler/testData/ir/irText/singletons/enumEntry.sig.kt.txt +++ b/compiler/testData/ir/irText/singletons/enumEntry.sig.kt.txt @@ -39,24 +39,14 @@ open enum class Z : Enum { // Public signature: /Z.ENTRY..|-5645683436151566731[0] // Public signature debug description: (){} private constructor() /* primary */ - // CHECK JVM_IR: - // Mangled name: Z.ENTRY#clone(){}kotlin.Any - // Public signature: /Z.ENTRY..clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Z.ENTRY#compareTo(Z){} - // Public signature: /Z.ENTRY..compareTo|7572315864006954503[0] - // Public signature debug description: compareTo(Z){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Z.ENTRY#compareTo(Z){}kotlin.Int // Public signature: /Z.ENTRY..compareTo|-7935111597565816011[0] // Public signature debug description: compareTo(Z){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Z.ENTRY#equals(kotlin.Any?){} - // Public signature: /Z.ENTRY..equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} + // Mangled name: Z.ENTRY#compareTo(Z){} + // Public signature: /Z.ENTRY..compareTo|7572315864006954503[0] + // Public signature debug description: compareTo(Z){} /* fake */ override operator fun compareTo(other: Z): Int // CHECK JVM_IR: @@ -64,9 +54,9 @@ open enum class Z : Enum { // Public signature: /Z.ENTRY..equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Z.ENTRY#hashCode(){} - // Public signature: /Z.ENTRY..hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: Z.ENTRY#equals(kotlin.Any?){} + // Public signature: /Z.ENTRY..equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -74,9 +64,9 @@ open enum class Z : Enum { // Public signature: /Z.ENTRY..hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Z.ENTRY#toString(){} - // Public signature: /Z.ENTRY..toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Z.ENTRY#hashCode(){} + // Public signature: /Z.ENTRY..hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -84,9 +74,9 @@ open enum class Z : Enum { // Public signature: /Z.ENTRY..toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Z.ENTRY#test(){} - // Public signature: /Z.ENTRY..test|6620506149988718649[0] - // Public signature debug description: test(){} + // Mangled name: Z.ENTRY#toString(){} + // Public signature: /Z.ENTRY..toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -105,9 +95,9 @@ open enum class Z : Enum { // Public signature: /Z.ENTRY..name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Z.ENTRY{}ordinal - // Public signature: /Z.ENTRY..ordinal|1912745122988592376[0] - // Public signature debug description: {}ordinal + // Mangled name: Z.ENTRY#(){} + // Public signature: /Z.ENTRY..name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -120,9 +110,9 @@ open enum class Z : Enum { // Public signature: /Z.ENTRY..ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Z#valueOf#static(kotlin.String){} - // Public signature: /Z.valueOf|-4683474617854611729[0] - // Public signature debug description: valueOf#static(kotlin.String){} + // Mangled name: Z.ENTRY#(){} + // Public signature: /Z.ENTRY..ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } @@ -132,9 +122,9 @@ open enum class Z : Enum { // Public signature: /Z.valueOf|6700955022581377295[0] // Public signature debug description: valueOf#static(kotlin.String){}Z // CHECK JS_IR NATIVE: - // Mangled name: Z#values#static(){} - // Public signature: /Z.values|-8715569000920726747[0] - // Public signature debug description: values#static(){} + // Mangled name: Z#valueOf#static(kotlin.String){} + // Public signature: /Z.valueOf|-4683474617854611729[0] + // Public signature debug description: valueOf#static(kotlin.String){} fun valueOf(value: String): Z // CHECK JVM_IR: @@ -142,29 +132,19 @@ open enum class Z : Enum { // Public signature: /Z.values|-4467060086112669746[0] // Public signature debug description: values#static(){}kotlin.Array // CHECK JS_IR NATIVE: - // Mangled name: Z#compareTo(Z){} - // Public signature: /Z.compareTo|7572315864006954503[0] - // Public signature debug description: compareTo(Z){} + // Mangled name: Z#values#static(){} + // Public signature: /Z.values|-8715569000920726747[0] + // Public signature debug description: values#static(){} fun values(): Array - // CHECK JVM_IR: - // Mangled name: Z#clone(){}kotlin.Any - // Public signature: /Z.clone|-6903128697527593263[0] - // Public signature debug description: clone(){}kotlin.Any - // CHECK JS_IR NATIVE: - // Mangled name: Z#equals(kotlin.Any?){} - // Public signature: /Z.equals|4638265728071529943[0] - // Public signature debug description: equals(kotlin.Any?){} - protected /* fake */ override fun clone(): Any - // CHECK JVM_IR: // Mangled name: Z#compareTo(Z){}kotlin.Int // Public signature: /Z.compareTo|-7935111597565816011[0] // Public signature debug description: compareTo(Z){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Z#hashCode(){} - // Public signature: /Z.hashCode|3409210261493131192[0] - // Public signature debug description: hashCode(){} + // Mangled name: Z#compareTo(Z){} + // Public signature: /Z.compareTo|7572315864006954503[0] + // Public signature debug description: compareTo(Z){} /* fake */ override operator fun compareTo(other: Z): Int // CHECK JVM_IR: @@ -172,9 +152,9 @@ open enum class Z : Enum { // Public signature: /Z.equals|722809408929142791[0] // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean // CHECK JS_IR NATIVE: - // Mangled name: Z#toString(){} - // Public signature: /Z.toString|-1522858123163872138[0] - // Public signature debug description: toString(){} + // Mangled name: Z#equals(kotlin.Any?){} + // Public signature: /Z.equals|4638265728071529943[0] + // Public signature debug description: equals(kotlin.Any?){} /* fake */ override operator fun equals(other: Any?): Boolean // CHECK JVM_IR: @@ -182,9 +162,9 @@ open enum class Z : Enum { // Public signature: /Z.hashCode|-8048879360829830756[0] // Public signature debug description: hashCode(){}kotlin.Int // CHECK JS_IR NATIVE: - // Mangled name: Z#static{}entries - // Public signature: /Z.entries|-5134227801081826149[0] - // Public signature debug description: #static{}entries + // Mangled name: Z#hashCode(){} + // Public signature: /Z.hashCode|3409210261493131192[0] + // Public signature debug description: hashCode(){} /* fake */ override fun hashCode(): Int // CHECK JVM_IR: @@ -192,9 +172,9 @@ open enum class Z : Enum { // Public signature: /Z.toString|6958853723545266802[0] // Public signature debug description: toString(){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Z##static(){} - // Public signature: /Z.entries.|-6068527377476727729[0] - // Public signature debug description: #static(){} + // Mangled name: Z#toString(){} + // Public signature: /Z.toString|-1522858123163872138[0] + // Public signature debug description: toString(){} /* fake */ override fun toString(): String // CHECK: @@ -207,9 +187,9 @@ open enum class Z : Enum { // Public signature: /Z.entries.|3224480899107517660[0] // Public signature debug description: #static(){}kotlin.enums.EnumEntries // CHECK JS_IR NATIVE: - // Mangled name: Z#(){} - // Public signature: /Z.name.|5879344792307730109[0] - // Public signature debug description: (){} + // Mangled name: Z##static(){} + // Public signature: /Z.entries.|-6068527377476727729[0] + // Public signature debug description: #static(){} get(): EnumEntries // CHECK: @@ -222,9 +202,9 @@ open enum class Z : Enum { // Public signature: /Z.name.|-8006111524522882650[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: - // Mangled name: Z#(){} - // Public signature: /Z.ordinal.|8409904226035914023[0] - // Public signature debug description: (){} + // Mangled name: Z#(){} + // Public signature: /Z.name.|5879344792307730109[0] + // Public signature debug description: (){} /* fake */ override get(): String // CHECK: @@ -236,6 +216,10 @@ open enum class Z : Enum { // Mangled name: Z#(){}kotlin.Int // Public signature: /Z.ordinal.|-6902664390061762634[0] // Public signature debug description: (){}kotlin.Int + // CHECK JS_IR NATIVE: + // Mangled name: Z#(){} + // Public signature: /Z.ordinal.|8409904226035914023[0] + // Public signature debug description: (){} /* fake */ override get(): Int } diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrMangledNameAndSignatureDumpHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrMangledNameAndSignatureDumpHandler.kt index b8e30779716..f2f1dfe4388 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrMangledNameAndSignatureDumpHandler.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrMangledNameAndSignatureDumpHandler.kt @@ -22,12 +22,10 @@ import org.jetbrains.kotlin.ir.declarations.* import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.interpreter.intrinsicConstEvaluationAnnotation import org.jetbrains.kotlin.ir.overrides.isEffectivelyPrivate -import org.jetbrains.kotlin.ir.types.classOrNull import org.jetbrains.kotlin.ir.types.isUnit import org.jetbrains.kotlin.ir.util.* import org.jetbrains.kotlin.load.java.JvmAnnotationNames import org.jetbrains.kotlin.load.java.lazy.descriptors.isJavaField -import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.name.StandardClassIds import org.jetbrains.kotlin.test.TargetBackend import org.jetbrains.kotlin.test.backend.codegenSuppressionChecker @@ -186,10 +184,6 @@ class IrMangledNameAndSignatureDumpHandler( (symbol.descriptor as? PropertyDescriptor)?.isJavaField == true || parent.let { it is IrDeclaration && it.potentiallyHasDifferentMangledNamesDependingOnBackend } - private fun IrSimpleFunction.isHiddenEnumMethod() = allOverridden(includeSelf = true).any { - it.dispatchReceiverParameter?.type?.classOrNull == irBuiltIns.enumClass && it.name in HIDDEN_ENUM_METHOD_NAMES - } - private val signatureComposer = PublicIdSignatureComputer(irMangler) private fun Printer.printCheckMarkerForNewDeclaration() { @@ -313,11 +307,15 @@ class IrMangledNameAndSignatureDumpHandler( // Don't print certain fake overrides coming from Java classes if (element is IrSimpleFunction && element.isFakeOverride && - (element.isStatic || element.hasPlatformDependent() || element.isHiddenEnumMethod()) + (element.isStatic || element.hasPlatformDependent()) ) { return false } + // Don't print declarations that are not printed in all IR text tests. + if (IrTextDumpHandler.isHiddenDeclaration(element, irBuiltIns)) + return false + printer.printSignatureAndMangledName(element) return true @@ -359,8 +357,6 @@ private val EXCLUDED_ANNOTATIONS = setOf( intrinsicConstEvaluationAnnotation, ) -private val HIDDEN_ENUM_METHOD_NAMES = setOf(Name.identifier("finalize"), Name.identifier("getDeclaringClass")) - private data class ComputedSignature( val computedBy: ComputedBy, val isPublic: Boolean, diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrTextDumpHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrTextDumpHandler.kt index 66a3a3225da..e45f414ae05 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrTextDumpHandler.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/backend/handlers/IrTextDumpHandler.kt @@ -6,13 +6,19 @@ package org.jetbrains.kotlin.test.backend.handlers import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext +import org.jetbrains.kotlin.ir.IrBuiltIns import org.jetbrains.kotlin.ir.UNDEFINED_OFFSET import org.jetbrains.kotlin.ir.declarations.IrClass +import org.jetbrains.kotlin.ir.declarations.IrDeclaration import org.jetbrains.kotlin.ir.declarations.IrFile +import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction +import org.jetbrains.kotlin.ir.types.classOrNull import org.jetbrains.kotlin.ir.util.DumpIrTreeOptions +import org.jetbrains.kotlin.ir.util.allOverridden import org.jetbrains.kotlin.ir.util.dump import org.jetbrains.kotlin.ir.util.dumpTreesFromLineNumber import org.jetbrains.kotlin.name.ClassId +import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.test.backend.ir.IrBackendInput import org.jetbrains.kotlin.test.directives.CodegenTestDirectives import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.DUMP_EXTERNAL_CLASS @@ -55,6 +61,21 @@ class IrTextDumpHandler( val testFile = module.files.firstOrNull { it.name == name } testFile to irFile } + + private val HIDDEN_ENUM_METHOD_NAMES = setOf( + Name.identifier("finalize"), // JVM-specific fake override from java.lang.Enum. TODO: remove it after fixing KT-63744 + Name.identifier("getDeclaringClass"), // JVM-specific fake override from java.lang.Enum. TODO: remove it after fixing KT-63744 + Name.identifier("clone"), // JVM-specific fake override from kotlin.Enum (not java.lang.Enum !). + ) + + private fun IrSimpleFunction.isHiddenEnumMethod(irBuiltIns: IrBuiltIns): Boolean { + return isFakeOverride && allOverridden(includeSelf = true).any { + it.dispatchReceiverParameter?.type?.classOrNull == irBuiltIns.enumClass && it.name in HIDDEN_ENUM_METHOD_NAMES + } + } + + fun isHiddenDeclaration(declaration: IrDeclaration, irBuiltIns: IrBuiltIns): Boolean = + (declaration as? IrSimpleFunction)?.isHiddenEnumMethod(irBuiltIns) == true } override val directiveContainers: List @@ -66,6 +87,8 @@ class IrTextDumpHandler( override fun processModule(module: TestModule, info: IrBackendInput) { if (DUMP_IR !in module.directives) return + val irBuiltins = info.irModuleFragment.irBuiltins + val dumpOptions = DumpIrTreeOptions( normalizeNames = true, printFacadeClassInFqNames = false, @@ -74,6 +97,7 @@ class IrTextDumpHandler( // PSI2IR assigns field `abbreviation` with type abbreviation. It serves only debugging purposes, and no compiler functionality relies on it. // FIR2IR does not initialize field `abbreviation` at all. printTypeAbbreviations = false, + isHiddenDeclaration = { isHiddenDeclaration(it, irBuiltins) } ) val builder = baseDumper.builderForModule(module.name)