[test] Get rid of SKIP_SIGNATURE_DUMP directive in irText tests

Sometimes there are legitimate reasons to have two separate signature
dumps for K1 and K2.

^KT-61797 Fixed
This commit is contained in:
Sergej Jaskiewicz
2024-01-12 18:39:39 +01:00
committed by Space Team
parent d2cf4548f6
commit da9f0e7af8
48 changed files with 5200 additions and 28 deletions
@@ -1,6 +1,3 @@
// SKIP_SIGNATURE_DUMP
// ^ K1 generates a useless delegate field for the Test2 class, K2 does not
interface IBase<A> {
fun <B> foo(a: A, b: B)
val <C> C.id: Map<A, C>?
@@ -0,0 +1,172 @@
// CHECK:
// Mangled name: Test1
// Public signature: /Test1|null[0]
class Test1<E : Any?> : IBase<E> {
// CHECK:
// Mangled name: Test1#<init>(IBase<1:0>){}
// Public signature: /Test1.<init>|-3017997426280513504[0]
// Public signature debug description: <init>(IBase<1:0>){}
constructor(i: IBase<E>) /* primary */
// CHECK:
// Mangled name: Test1#foo(1:0;0:0){0§<kotlin.Any?>}
// Public signature: /Test1.foo|406069289574534187[0]
// Public signature debug description: foo(1:0;0:0){0§<kotlin.Any?>}
override fun <B : Any?> foo(a: E, b: B): Unit
// CHECK:
// Mangled name: Test1@0:0{0§<kotlin.Any?>}id
// Public signature: /Test1.id|6409895071901545951[0]
// Public signature debug description: @0:0{0§<kotlin.Any?>}id
override val <C : Any?> C.id: Map<E, C>?
// CHECK JVM_IR:
// Mangled name: Test1#<get-id>@0:0(){0§<kotlin.Any?>}kotlin.collections.Map<1:0,0:0>?
// Public signature: /Test1.id.<get-id>|-1161899104741266586[0]
// Public signature debug description: <get-id>@0:0(){0§<kotlin.Any?>}kotlin.collections.Map<1:0,0:0>?
// CHECK JS_IR NATIVE:
// Mangled name: Test1#<get-id>@0:0(){0§<kotlin.Any?>}
// Public signature: /Test1.id.<get-id>|-1537502770664138716[0]
// Public signature debug description: <get-id>@0:0(){0§<kotlin.Any?>}
override get(): Map<E, C>?
// CHECK:
// Mangled name: Test1@kotlin.collections.List<0:0>{0§<kotlin.Any?>}x
// Public signature: /Test1.x|-197950632589282220[0]
// Public signature debug description: @kotlin.collections.List<0:0>{0§<kotlin.Any?>}x
override var <D : Any?> List<D>.x: D?
// CHECK JVM_IR:
// Mangled name: Test1#<get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0?
// Public signature: /Test1.x.<get-x>|1915131689713400313[0]
// Public signature debug description: <get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0?
// CHECK JS_IR NATIVE:
// Mangled name: Test1#<get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}
// Public signature: /Test1.x.<get-x>|-7897041295469127828[0]
// Public signature debug description: <get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}
override get(): D?
// CHECK:
// Mangled name: Test1#<set-x>@kotlin.collections.List<0:0>(0:0?){0§<kotlin.Any?>}
// Public signature: /Test1.x.<set-x>|7048513426934671771[0]
// Public signature debug description: <set-x>@kotlin.collections.List<0:0>(0:0?){0§<kotlin.Any?>}
override set(<set-?>: D?): Unit
}
// CHECK:
// Mangled name: Test2
// Public signature: /Test2|null[0]
class Test2 : IBase<String> {
// CHECK:
// Mangled name: Test2{}j
// Public signature: /Test2.j|-6836075379230315579[0]
// Public signature debug description: {}j
var j: IBase<String>
// CHECK JVM_IR:
// Mangled name: Test2#<get-j>(){}IBase<kotlin.String>
// Public signature: /Test2.j.<get-j>|-6883763672420899739[0]
// Public signature debug description: <get-j>(){}IBase<kotlin.String>
// CHECK JS_IR NATIVE:
// Mangled name: Test2#<get-j>(){}
// Public signature: /Test2.j.<get-j>|5087577794943671660[0]
// Public signature debug description: <get-j>(){}
get
// CHECK:
// Mangled name: Test2#<set-j>(IBase<kotlin.String>){}
// Public signature: /Test2.j.<set-j>|4329154110216130240[0]
// Public signature debug description: <set-j>(IBase<kotlin.String>){}
set
// CHECK:
// Mangled name: Test2#<init>(IBase<kotlin.String>){}
// Public signature: /Test2.<init>|4395202944622832808[0]
// Public signature debug description: <init>(IBase<kotlin.String>){}
constructor(j: IBase<String>) /* primary */
// CHECK:
// Mangled name: Test2#foo(kotlin.String;0:0){0§<kotlin.Any?>}
// Public signature: /Test2.foo|3497909443104319155[0]
// Public signature debug description: foo(kotlin.String;0:0){0§<kotlin.Any?>}
override fun <B : Any?> foo(a: String, b: B): Unit
// CHECK:
// Mangled name: Test2@0:0{0§<kotlin.Any?>}id
// Public signature: /Test2.id|6409895071901545951[0]
// Public signature debug description: @0:0{0§<kotlin.Any?>}id
override val <C : Any?> C.id: Map<String, C>?
// CHECK JVM_IR:
// Mangled name: Test2#<get-id>@0:0(){0§<kotlin.Any?>}kotlin.collections.Map<kotlin.String,0:0>?
// Public signature: /Test2.id.<get-id>|5038832815964071118[0]
// Public signature debug description: <get-id>@0:0(){0§<kotlin.Any?>}kotlin.collections.Map<kotlin.String,0:0>?
// CHECK JS_IR NATIVE:
// Mangled name: Test2#<get-id>@0:0(){0§<kotlin.Any?>}
// Public signature: /Test2.id.<get-id>|-1537502770664138716[0]
// Public signature debug description: <get-id>@0:0(){0§<kotlin.Any?>}
override get(): Map<String, C>?
// CHECK:
// Mangled name: Test2@kotlin.collections.List<0:0>{0§<kotlin.Any?>}x
// Public signature: /Test2.x|-197950632589282220[0]
// Public signature debug description: @kotlin.collections.List<0:0>{0§<kotlin.Any?>}x
override var <D : Any?> List<D>.x: D?
// CHECK JVM_IR:
// Mangled name: Test2#<get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0?
// Public signature: /Test2.x.<get-x>|1915131689713400313[0]
// Public signature debug description: <get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0?
// CHECK JS_IR NATIVE:
// Mangled name: Test2#<get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}
// Public signature: /Test2.x.<get-x>|-7897041295469127828[0]
// Public signature debug description: <get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}
override get(): D?
// CHECK:
// Mangled name: Test2#<set-x>@kotlin.collections.List<0:0>(0:0?){0§<kotlin.Any?>}
// Public signature: /Test2.x.<set-x>|7048513426934671771[0]
// Public signature debug description: <set-x>@kotlin.collections.List<0:0>(0:0?){0§<kotlin.Any?>}
override set(<set-?>: D?): Unit
}
// CHECK:
// Mangled name: IBase
// Public signature: /IBase|null[0]
interface IBase<A : Any?> {
// CHECK:
// Mangled name: IBase#foo(1:0;0:0){0§<kotlin.Any?>}
// Public signature: /IBase.foo|406069289574534187[0]
// Public signature debug description: foo(1:0;0:0){0§<kotlin.Any?>}
abstract fun <B : Any?> foo(a: A, b: B): Unit
// CHECK:
// Mangled name: IBase@0:0{0§<kotlin.Any?>}id
// Public signature: /IBase.id|6409895071901545951[0]
// Public signature debug description: @0:0{0§<kotlin.Any?>}id
abstract val <C : Any?> C.id: Map<A, C>?
// CHECK JVM_IR:
// Mangled name: IBase#<get-id>@0:0(){0§<kotlin.Any?>}kotlin.collections.Map<1:0,0:0>?
// Public signature: /IBase.id.<get-id>|-1161899104741266586[0]
// Public signature debug description: <get-id>@0:0(){0§<kotlin.Any?>}kotlin.collections.Map<1:0,0:0>?
// CHECK JS_IR NATIVE:
// Mangled name: IBase#<get-id>@0:0(){0§<kotlin.Any?>}
// Public signature: /IBase.id.<get-id>|-1537502770664138716[0]
// Public signature debug description: <get-id>@0:0(){0§<kotlin.Any?>}
abstract get
// CHECK:
// Mangled name: IBase@kotlin.collections.List<0:0>{0§<kotlin.Any?>}x
// Public signature: /IBase.x|-197950632589282220[0]
// Public signature debug description: @kotlin.collections.List<0:0>{0§<kotlin.Any?>}x
abstract var <D : Any?> List<D>.x: D?
// CHECK JVM_IR:
// Mangled name: IBase#<get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0?
// Public signature: /IBase.x.<get-x>|1915131689713400313[0]
// Public signature debug description: <get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}0:0?
// CHECK JS_IR NATIVE:
// Mangled name: IBase#<get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}
// Public signature: /IBase.x.<get-x>|-7897041295469127828[0]
// Public signature debug description: <get-x>@kotlin.collections.List<0:0>(){0§<kotlin.Any?>}
abstract get
// CHECK:
// Mangled name: IBase#<set-x>@kotlin.collections.List<0:0>(0:0?){0§<kotlin.Any?>}
// Public signature: /IBase.x.<set-x>|7048513426934671771[0]
// Public signature debug description: <set-x>@kotlin.collections.List<0:0>(0:0?){0§<kotlin.Any?>}
abstract set
}
@@ -0,0 +1,58 @@
// CHECK:
// Mangled name: Test
// Public signature: /Test|null[0]
class Test : J {
// CHECK:
// Mangled name: Test{}j
// Public signature: /Test.j|-6836075379230315579[0]
// Public signature debug description: {}j
private val j: J
// CHECK JVM_IR:
// Mangled name: Test#<get-j>(){}J
// Public signature: /Test.j.<get-j>|-6114050685652754863[0]
// Public signature debug description: <get-j>(){}J
private get
// CHECK:
// Mangled name: Test#<init>(J){}
// Public signature: /Test.<init>|1083383516528472352[0]
// Public signature debug description: <init>(J){}
constructor(j: J) /* primary */
// CHECK JVM_IR:
// Mangled name: Test#returnNotNull(){}kotlin.String{EnhancedNullability}
// Public signature: /Test.returnNotNull|-3682895453084642874[0]
// Public signature debug description: returnNotNull(){}kotlin.String{EnhancedNullability}
override fun returnNotNull(): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: Test#returnNullable(){}kotlin.String?
// Public signature: /Test.returnNullable|-8543835017469041188[0]
// Public signature debug description: returnNullable(){}kotlin.String?
override fun returnNullable(): String?
// CHECK JVM_IR:
// Mangled name: Test#returnsFlexible(){}kotlin.String?
// Public signature: /Test.returnsFlexible|-5946143652599840920[0]
// Public signature debug description: returnsFlexible(){}kotlin.String?
override fun returnsFlexible(): String?
// CHECK:
// Mangled name: Test#takeFlexible(kotlin.String?){}
// Public signature: /Test.takeFlexible|8434697244780181625[0]
// Public signature debug description: takeFlexible(kotlin.String?){}
override fun takeFlexible(x: String?): Unit
// CHECK:
// Mangled name: Test#takeNotNull(kotlin.String{EnhancedNullability}){}
// Public signature: /Test.takeNotNull|2138033560695328162[0]
// Public signature debug description: takeNotNull(kotlin.String{EnhancedNullability}){}
override fun takeNotNull(x: @EnhancedNullability String): Unit
// CHECK:
// Mangled name: Test#takeNullable(kotlin.String?){}
// Public signature: /Test.takeNullable|5724815424219841897[0]
// Public signature debug description: takeNullable(kotlin.String?){}
override fun takeNullable(x: String?): Unit
}
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// SKIP_SIGNATURE_DUMP
// SEPARATE_SIGNATURE_DUMP_FOR_K2
// ^ Fake overrides have divirging @EnhancedNullability in K1 and K2
// FILE: delegatedImplementationOfJavaInterface.kt
@@ -0,0 +1,58 @@
// CHECK:
// Mangled name: Test
// Public signature: /Test|null[0]
class Test : J {
// CHECK:
// Mangled name: Test{}j
// Public signature: /Test.j|-6836075379230315579[0]
// Public signature debug description: {}j
private val j: J
// CHECK JVM_IR:
// Mangled name: Test#<get-j>(){}J
// Public signature: /Test.j.<get-j>|-6114050685652754863[0]
// Public signature debug description: <get-j>(){}J
private get
// CHECK:
// Mangled name: Test#<init>(J){}
// Public signature: /Test.<init>|1083383516528472352[0]
// Public signature debug description: <init>(J){}
constructor(j: J) /* primary */
// CHECK JVM_IR:
// Mangled name: Test#returnNotNull(){}kotlin.String{EnhancedNullability}
// Public signature: /Test.returnNotNull|-3682895453084642874[0]
// Public signature debug description: returnNotNull(){}kotlin.String{EnhancedNullability}
override fun returnNotNull(): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: Test#returnNullable(){}kotlin.String?{EnhancedNullability}
// Public signature: /Test.returnNullable|-404622903433277680[0]
// Public signature debug description: returnNullable(){}kotlin.String?{EnhancedNullability}
override fun returnNullable(): @EnhancedNullability String?
// CHECK JVM_IR:
// Mangled name: Test#returnsFlexible(){}kotlin.String?
// Public signature: /Test.returnsFlexible|-5946143652599840920[0]
// Public signature debug description: returnsFlexible(){}kotlin.String?
override fun returnsFlexible(): String?
// CHECK:
// Mangled name: Test#takeFlexible(kotlin.String?){}
// Public signature: /Test.takeFlexible|8434697244780181625[0]
// Public signature debug description: takeFlexible(kotlin.String?){}
override fun takeFlexible(x: String?): Unit
// CHECK:
// Mangled name: Test#takeNotNull(kotlin.String{EnhancedNullability}){}
// Public signature: /Test.takeNotNull|2138033560695328162[0]
// Public signature debug description: takeNotNull(kotlin.String{EnhancedNullability}){}
override fun takeNotNull(x: @EnhancedNullability String): Unit
// CHECK:
// Mangled name: Test#takeNullable(kotlin.String?{EnhancedNullability}){}
// Public signature: /Test.takeNullable|-558980523272297075[0]
// Public signature debug description: takeNullable(kotlin.String?{EnhancedNullability}){}
override fun takeNullable(x: @EnhancedNullability String?): Unit
}
@@ -0,0 +1,52 @@
// CHECK:
// Mangled name: A
// Public signature: /A|null[0]
abstract class A {
// CHECK:
// Mangled name: A#<init>(){}
// Public signature: /A.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK:
// Mangled name: A{}a
// Public signature: /A.a|-1200697420457237799[0]
// Public signature debug description: {}a
abstract val a: A?
// CHECK JVM_IR:
// Mangled name: A#<get-a>(){}A?
// Public signature: /A.a.<get-a>|-5866676359912206759[0]
// Public signature debug description: <get-a>(){}A?
abstract get
}
// CHECK:
// Mangled name: B
// Public signature: /B|null[0]
class B : AX {
// CHECK:
// Mangled name: B#<init>(){}
// Public signature: /B.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: B#getA(){}X?
// Public signature: /B.getA|-186252691497860920[0]
// Public signature debug description: getA(){}X?
override fun getA(): X?
// CHECK:
// Mangled name: B{}a
// Public signature: /B.a|-1200697420457237799[0]
// Public signature debug description: {}a
/* fake */ override val a: AX?
// CHECK JVM_IR:
// Mangled name: B#<get-a>(){}AX?
// Public signature: /B.a.<get-a>|243290884802757470[0]
// Public signature debug description: <get-a>(){}AX?
@Override
/* fake */ override get(): AX?
}
+1 -1
View File
@@ -3,7 +3,7 @@
// DUMP_EXTERNAL_CLASS: X
// DUMP_EXTERNAL_CLASS: AX
// SKIP_SIGNATURE_DUMP
// SEPARATE_SIGNATURE_DUMP_FOR_K2
// ^ Fake overrides have divirging @EnhancedNullability in K1 and K2
// FILE: kt45853.kt
+52
View File
@@ -0,0 +1,52 @@
// CHECK:
// Mangled name: A
// Public signature: /A|null[0]
abstract class A {
// CHECK:
// Mangled name: A#<init>(){}
// Public signature: /A.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK:
// Mangled name: A{}a
// Public signature: /A.a|-1200697420457237799[0]
// Public signature debug description: {}a
abstract val a: A?
// CHECK JVM_IR:
// Mangled name: A#<get-a>(){}A?
// Public signature: /A.a.<get-a>|-5866676359912206759[0]
// Public signature debug description: <get-a>(){}A?
abstract get
}
// CHECK:
// Mangled name: B
// Public signature: /B|null[0]
class B : AX {
// CHECK:
// Mangled name: B#<init>(){}
// Public signature: /B.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: B#getA(){}X?
// Public signature: /B.getA|-186252691497860920[0]
// Public signature debug description: getA(){}X?
override fun getA(): X?
// CHECK:
// Mangled name: B{}a
// Public signature: /B.a|-1200697420457237799[0]
// Public signature debug description: {}a
/* fake */ override val a: @EnhancedNullability AX?
// CHECK JVM_IR:
// Mangled name: B#<get-a>(){}AX?{EnhancedNullability}
// Public signature: /B.a.<get-a>|1682004550888840418[0]
// Public signature debug description: <get-a>(){}AX?{EnhancedNullability}
@Override
/* fake */ override get(): @EnhancedNullability AX?
}
@@ -0,0 +1,17 @@
// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
class C : I {
// CHECK:
// Mangled name: C#<init>(J){}
// Public signature: /C.<init>|1083383516528472352[0]
// Public signature debug description: <init>(J){}
constructor(client: J) /* primary */
// CHECK JVM_IR:
// Mangled name: C#foo(){0§<kotlin.Any?>}kotlin.collections.MutableList<0:0?>?
// Public signature: /C.foo|1528742332167339732[0]
// Public signature debug description: foo(){0§<kotlin.Any?>}kotlin.collections.MutableList<0:0?>?
override fun <C : Any?> foo(): MutableList<C?>?
}
+1 -1
View File
@@ -1,7 +1,7 @@
// TARGET_BACKEND: JVM
// SKIP_KT_DUMP
// SKIP_SIGNATURE_DUMP
// SEPARATE_SIGNATURE_DUMP_FOR_K2
// ^ K2 generates an override for foo in C, K1 does not
// FILE: kt45934.kt
+11
View File
@@ -0,0 +1,11 @@
// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
class C : I {
// CHECK:
// Mangled name: C#<init>(J){}
// Public signature: /C.<init>|1083383516528472352[0]
// Public signature debug description: <init>(J){}
constructor(client: J) /* primary */
}