[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:
committed by
Space Team
parent
d2cf4548f6
commit
da9f0e7af8
@@ -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>?
|
||||
|
||||
+172
@@ -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
|
||||
|
||||
}
|
||||
+58
@@ -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
-1
@@ -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
|
||||
|
||||
+58
@@ -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
@@ -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
|
||||
|
||||
@@ -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
@@ -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
|
||||
|
||||
@@ -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 */
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user