Files
anzhela.sukhanova 82255d5ee8 [Test] KT-61360: add tests for the IrFakeOverrideBuilder
Add tests for fake overrides with focus on java interoperability

Co-authored-by: Aleksandra Arsenteva <aleksandra.arsenteva@jetbrains.com>
2024-03-04 16:21:02 +00:00

394 lines
24 KiB
Kotlin
Vendored

// CHECK:
// Mangled name: C
// Public signature: /C|null[0]
abstract class C<T : Any?> : SortedMap<T, T> {
// CHECK:
// Mangled name: C#<init>(){}
// Public signature: /C.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK:
// Mangled name: C#clear(){}
// Public signature: /C.clear|-6446868449915108923[0]
// Public signature debug description: clear(){}
abstract /* fake */ override fun clear(): Unit
// CHECK JVM_IR:
// Mangled name: C#comparator(){}java.util.Comparator<in|1:0?>?
// Public signature: /C.comparator|6240606908609711708[0]
// Public signature debug description: comparator(){}java.util.Comparator<in|1:0?>?
abstract /* fake */ override fun comparator(): Comparator<in T?>?
// CHECK JVM_IR:
// Mangled name: C#compute(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /C.compute|2702548563686810222[0]
// Public signature debug description: compute(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun compute(p0: @EnhancedNullability T?, p1: @EnhancedNullability BiFunction<in @EnhancedNullability T?, in @EnhancedNullability T?, out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: C#computeIfAbsent(1:0?{EnhancedNullability};java.util.function.Function<in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /C.computeIfAbsent|1902356953839346066[0]
// Public signature debug description: computeIfAbsent(1:0?{EnhancedNullability};java.util.function.Function<in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun computeIfAbsent(p0: @EnhancedNullability T?, p1: @EnhancedNullability Function<in @EnhancedNullability T?, out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: C#computeIfPresent(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /C.computeIfPresent|2317887948082965150[0]
// Public signature debug description: computeIfPresent(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun computeIfPresent(p0: @EnhancedNullability T?, p1: @EnhancedNullability BiFunction<in @EnhancedNullability T?, in @EnhancedNullability (T & Any), out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: C#containsKey(1:0?){}kotlin.Boolean
// Public signature: /C.containsKey|5388260987070917879[0]
// Public signature debug description: containsKey(1:0?){}kotlin.Boolean
abstract /* fake */ override fun containsKey(key: T?): Boolean
// CHECK JVM_IR:
// Mangled name: C#containsValue(1:0?){}kotlin.Boolean
// Public signature: /C.containsValue|-9089876849234680485[0]
// Public signature debug description: containsValue(1:0?){}kotlin.Boolean
abstract /* fake */ override fun containsValue(value: T?): Boolean
// CHECK JVM_IR:
// Mangled name: C#firstKey(){}1:0?
// Public signature: /C.firstKey|1162655332206060593[0]
// Public signature debug description: firstKey(){}1:0?
abstract /* fake */ override fun firstKey(): T?
// CHECK:
// Mangled name: C#forEach(java.util.function.BiConsumer<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability}>{EnhancedNullability}){}
// Public signature: /C.forEach|8271883452393484682[0]
// Public signature debug description: forEach(java.util.function.BiConsumer<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability}>{EnhancedNullability}){}
/* fake */ override fun forEach(p0: @EnhancedNullability BiConsumer<in @EnhancedNullability T?, in @EnhancedNullability T?>): Unit
// CHECK JVM_IR:
// Mangled name: C#get(1:0?){}1:0?
// Public signature: /C.get|8053764236007311354[0]
// Public signature debug description: get(1:0?){}1:0?
abstract /* fake */ override operator fun get(key: T?): T?
// CHECK JVM_IR:
// Mangled name: C#headMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
// Public signature: /C.headMap|-754070613780754732[0]
// Public signature debug description: headMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
abstract /* fake */ override fun headMap(p0: T?): SortedMap<T?, T?>?
// CHECK JVM_IR:
// Mangled name: C#isEmpty(){}kotlin.Boolean
// Public signature: /C.isEmpty|-626562167393617703[0]
// Public signature debug description: isEmpty(){}kotlin.Boolean
abstract /* fake */ override fun isEmpty(): Boolean
// CHECK JVM_IR:
// Mangled name: C#lastKey(){}1:0?
// Public signature: /C.lastKey|3981838503626640145[0]
// Public signature debug description: lastKey(){}1:0?
abstract /* fake */ override fun lastKey(): T?
// CHECK JVM_IR:
// Mangled name: C#merge(1:0?{EnhancedNullability};1:0{EnhancedNullability};java.util.function.BiFunction<in|1:0{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /C.merge|8605551438802482404[0]
// Public signature debug description: merge(1:0?{EnhancedNullability};1:0{EnhancedNullability};java.util.function.BiFunction<in|1:0{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun merge(p0: @EnhancedNullability T?, p1: @EnhancedNullability (T & Any), p2: @EnhancedNullability BiFunction<in @EnhancedNullability (T & Any), in @EnhancedNullability (T & Any), out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: C#put(1:0?;1:0?){}1:0?
// Public signature: /C.put|-1512118296314101551[0]
// Public signature debug description: put(1:0?;1:0?){}1:0?
abstract /* fake */ override fun put(key: T?, value: T?): T?
// CHECK:
// Mangled name: C#putAll(kotlin.collections.Map<out|1:0?,1:0?>){}
// Public signature: /C.putAll|-5586465831845288712[0]
// Public signature debug description: putAll(kotlin.collections.Map<out|1:0?,1:0?>){}
abstract /* fake */ override fun putAll(from: Map<out T?, T?>): Unit
// CHECK JVM_IR:
// Mangled name: C#putIfAbsent(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /C.putIfAbsent|4472454802371662741[0]
// Public signature debug description: putIfAbsent(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun putIfAbsent(p0: @EnhancedNullability T?, p1: @EnhancedNullability T?): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: C#remove(1:0?){}1:0?
// Public signature: /C.remove|1221481991735041067[0]
// Public signature debug description: remove(1:0?){}1:0?
abstract /* fake */ override fun remove(key: T?): T?
// CHECK JVM_IR:
// Mangled name: C#replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /C.replace|-2461207647642232963[0]
// Public signature debug description: replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun replace(p0: @EnhancedNullability T?, p1: @EnhancedNullability T?): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: C#replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}kotlin.Boolean
// Public signature: /C.replace|2720322045310582221[0]
// Public signature debug description: replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun replace(p0: @EnhancedNullability T?, p1: @EnhancedNullability T?, p2: @EnhancedNullability T?): Boolean
// CHECK:
// Mangled name: C#replaceAll(java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}
// Public signature: /C.replaceAll|-2102697218249204468[0]
// Public signature debug description: replaceAll(java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}
/* fake */ override fun replaceAll(p0: @EnhancedNullability BiFunction<in @EnhancedNullability T?, in @EnhancedNullability T?, out @EnhancedNullability T?>): Unit
// CHECK JVM_IR:
// Mangled name: C#subMap(1:0?;1:0?){}java.util.SortedMap<1:0?,1:0?>?
// Public signature: /C.subMap|387932042874080016[0]
// Public signature debug description: subMap(1:0?;1:0?){}java.util.SortedMap<1:0?,1:0?>?
abstract /* fake */ override fun subMap(p0: T?, p1: T?): SortedMap<T?, T?>?
// CHECK JVM_IR:
// Mangled name: C#tailMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
// Public signature: /C.tailMap|-6854479957652547142[0]
// Public signature debug description: tailMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
abstract /* fake */ override fun tailMap(p0: T?): SortedMap<T?, T?>?
// CHECK:
// Mangled name: C{}entries
// Public signature: /C.entries|-586096469347622282[0]
// Public signature debug description: {}entries
abstract /* fake */ override val entries: @EnhancedNullability MutableSet<@EnhancedNullability MutableEntry<T?, T?>>
// CHECK JVM_IR:
// Mangled name: C#<get-entries>(){}kotlin.collections.MutableSet<kotlin.collections.MutableMap.MutableEntry<1:0?,1:0?>{EnhancedNullability}>{EnhancedNullability}
// Public signature: /C.entries.<get-entries>|-3651740414273962157[0]
// Public signature debug description: <get-entries>(){}kotlin.collections.MutableSet<kotlin.collections.MutableMap.MutableEntry<1:0?,1:0?>{EnhancedNullability}>{EnhancedNullability}
abstract /* fake */ override get(): @EnhancedNullability MutableSet<@EnhancedNullability MutableEntry<T?, T?>>
// CHECK:
// Mangled name: C{}keys
// Public signature: /C.keys|-1539062068328255324[0]
// Public signature debug description: {}keys
abstract /* fake */ override val keys: @EnhancedNullability MutableSet<T?>
// CHECK JVM_IR:
// Mangled name: C#<get-keys>(){}kotlin.collections.MutableSet<1:0?>{EnhancedNullability}
// Public signature: /C.keys.<get-keys>|649304329200166856[0]
// Public signature debug description: <get-keys>(){}kotlin.collections.MutableSet<1:0?>{EnhancedNullability}
abstract /* fake */ override get(): @EnhancedNullability MutableSet<T?>
// CHECK:
// Mangled name: C{}size
// Public signature: /C.size|-6253659984320132064[0]
// Public signature debug description: {}size
abstract /* fake */ override val size: Int
// CHECK JVM_IR:
// Mangled name: C#<get-size>(){}kotlin.Int
// Public signature: /C.size.<get-size>|-3941649985161900780[0]
// Public signature debug description: <get-size>(){}kotlin.Int
abstract /* fake */ override get(): Int
// CHECK:
// Mangled name: C{}values
// Public signature: /C.values|-764749005844117249[0]
// Public signature debug description: {}values
abstract /* fake */ override val values: @EnhancedNullability MutableCollection<T?>
// CHECK JVM_IR:
// Mangled name: C#<get-values>(){}kotlin.collections.MutableCollection<1:0?>{EnhancedNullability}
// Public signature: /C.values.<get-values>|-4281354652209631610[0]
// Public signature debug description: <get-values>(){}kotlin.collections.MutableCollection<1:0?>{EnhancedNullability}
abstract /* fake */ override get(): @EnhancedNullability MutableCollection<T?>
}
// CHECK:
// Mangled name: D
// Public signature: /D|null[0]
abstract class D<T : Any?> : SortedMap<T, T> {
// CHECK:
// Mangled name: D{}size
// Public signature: /D.size|-6253659984320132064[0]
// Public signature debug description: {}size
override val size: Int
// CHECK JVM_IR:
// Mangled name: D#<get-size>(){}kotlin.Int
// Public signature: /D.size.<get-size>|-3941649985161900780[0]
// Public signature debug description: <get-size>(){}kotlin.Int
override get
// CHECK:
// Mangled name: D#<init>(kotlin.Int){}
// Public signature: /D.<init>|-5182794243525578284[0]
// Public signature debug description: <init>(kotlin.Int){}
constructor(size: Int) /* primary */
// CHECK:
// Mangled name: D#clear(){}
// Public signature: /D.clear|-6446868449915108923[0]
// Public signature debug description: clear(){}
abstract /* fake */ override fun clear(): Unit
// CHECK JVM_IR:
// Mangled name: D#comparator(){}java.util.Comparator<in|1:0?>?
// Public signature: /D.comparator|6240606908609711708[0]
// Public signature debug description: comparator(){}java.util.Comparator<in|1:0?>?
abstract /* fake */ override fun comparator(): Comparator<in T?>?
// CHECK JVM_IR:
// Mangled name: D#compute(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /D.compute|2702548563686810222[0]
// Public signature debug description: compute(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun compute(p0: @EnhancedNullability T?, p1: @EnhancedNullability BiFunction<in @EnhancedNullability T?, in @EnhancedNullability T?, out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: D#computeIfAbsent(1:0?{EnhancedNullability};java.util.function.Function<in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /D.computeIfAbsent|1902356953839346066[0]
// Public signature debug description: computeIfAbsent(1:0?{EnhancedNullability};java.util.function.Function<in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun computeIfAbsent(p0: @EnhancedNullability T?, p1: @EnhancedNullability Function<in @EnhancedNullability T?, out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: D#computeIfPresent(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /D.computeIfPresent|2317887948082965150[0]
// Public signature debug description: computeIfPresent(1:0?{EnhancedNullability};java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun computeIfPresent(p0: @EnhancedNullability T?, p1: @EnhancedNullability BiFunction<in @EnhancedNullability T?, in @EnhancedNullability (T & Any), out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: D#containsKey(1:0?){}kotlin.Boolean
// Public signature: /D.containsKey|5388260987070917879[0]
// Public signature debug description: containsKey(1:0?){}kotlin.Boolean
abstract /* fake */ override fun containsKey(key: T?): Boolean
// CHECK JVM_IR:
// Mangled name: D#containsValue(1:0?){}kotlin.Boolean
// Public signature: /D.containsValue|-9089876849234680485[0]
// Public signature debug description: containsValue(1:0?){}kotlin.Boolean
abstract /* fake */ override fun containsValue(value: T?): Boolean
// CHECK JVM_IR:
// Mangled name: D#firstKey(){}1:0?
// Public signature: /D.firstKey|1162655332206060593[0]
// Public signature debug description: firstKey(){}1:0?
abstract /* fake */ override fun firstKey(): T?
// CHECK:
// Mangled name: D#forEach(java.util.function.BiConsumer<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability}>{EnhancedNullability}){}
// Public signature: /D.forEach|8271883452393484682[0]
// Public signature debug description: forEach(java.util.function.BiConsumer<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability}>{EnhancedNullability}){}
/* fake */ override fun forEach(p0: @EnhancedNullability BiConsumer<in @EnhancedNullability T?, in @EnhancedNullability T?>): Unit
// CHECK JVM_IR:
// Mangled name: D#get(1:0?){}1:0?
// Public signature: /D.get|8053764236007311354[0]
// Public signature debug description: get(1:0?){}1:0?
abstract /* fake */ override operator fun get(key: T?): T?
// CHECK JVM_IR:
// Mangled name: D#headMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
// Public signature: /D.headMap|-754070613780754732[0]
// Public signature debug description: headMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
abstract /* fake */ override fun headMap(p0: T?): SortedMap<T?, T?>?
// CHECK JVM_IR:
// Mangled name: D#isEmpty(){}kotlin.Boolean
// Public signature: /D.isEmpty|-626562167393617703[0]
// Public signature debug description: isEmpty(){}kotlin.Boolean
abstract /* fake */ override fun isEmpty(): Boolean
// CHECK JVM_IR:
// Mangled name: D#lastKey(){}1:0?
// Public signature: /D.lastKey|3981838503626640145[0]
// Public signature debug description: lastKey(){}1:0?
abstract /* fake */ override fun lastKey(): T?
// CHECK JVM_IR:
// Mangled name: D#merge(1:0?{EnhancedNullability};1:0{EnhancedNullability};java.util.function.BiFunction<in|1:0{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /D.merge|8605551438802482404[0]
// Public signature debug description: merge(1:0?{EnhancedNullability};1:0{EnhancedNullability};java.util.function.BiFunction<in|1:0{EnhancedNullability},in|1:0{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun merge(p0: @EnhancedNullability T?, p1: @EnhancedNullability (T & Any), p2: @EnhancedNullability BiFunction<in @EnhancedNullability (T & Any), in @EnhancedNullability (T & Any), out @EnhancedNullability T?>): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: D#put(1:0?;1:0?){}1:0?
// Public signature: /D.put|-1512118296314101551[0]
// Public signature debug description: put(1:0?;1:0?){}1:0?
abstract /* fake */ override fun put(key: T?, value: T?): T?
// CHECK:
// Mangled name: D#putAll(kotlin.collections.Map<out|1:0?,1:0?>){}
// Public signature: /D.putAll|-5586465831845288712[0]
// Public signature debug description: putAll(kotlin.collections.Map<out|1:0?,1:0?>){}
abstract /* fake */ override fun putAll(from: Map<out T?, T?>): Unit
// CHECK JVM_IR:
// Mangled name: D#putIfAbsent(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /D.putIfAbsent|4472454802371662741[0]
// Public signature debug description: putIfAbsent(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun putIfAbsent(p0: @EnhancedNullability T?, p1: @EnhancedNullability T?): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: D#replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
// Public signature: /D.replace|-2461207647642232963[0]
// Public signature debug description: replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}1:0?{EnhancedNullability}
/* fake */ override fun replace(p0: @EnhancedNullability T?, p1: @EnhancedNullability T?): @EnhancedNullability T?
// CHECK JVM_IR:
// Mangled name: D#replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}kotlin.Boolean
// Public signature: /D.replace|2720322045310582221[0]
// Public signature debug description: replace(1:0?{EnhancedNullability};1:0?{EnhancedNullability};1:0?{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun replace(p0: @EnhancedNullability T?, p1: @EnhancedNullability T?, p2: @EnhancedNullability T?): Boolean
// CHECK:
// Mangled name: D#replaceAll(java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}
// Public signature: /D.replaceAll|-2102697218249204468[0]
// Public signature debug description: replaceAll(java.util.function.BiFunction<in|1:0?{EnhancedNullability},in|1:0?{EnhancedNullability},out|1:0?{EnhancedNullability}>{EnhancedNullability}){}
/* fake */ override fun replaceAll(p0: @EnhancedNullability BiFunction<in @EnhancedNullability T?, in @EnhancedNullability T?, out @EnhancedNullability T?>): Unit
// CHECK JVM_IR:
// Mangled name: D#subMap(1:0?;1:0?){}java.util.SortedMap<1:0?,1:0?>?
// Public signature: /D.subMap|387932042874080016[0]
// Public signature debug description: subMap(1:0?;1:0?){}java.util.SortedMap<1:0?,1:0?>?
abstract /* fake */ override fun subMap(p0: T?, p1: T?): SortedMap<T?, T?>?
// CHECK JVM_IR:
// Mangled name: D#tailMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
// Public signature: /D.tailMap|-6854479957652547142[0]
// Public signature debug description: tailMap(1:0?){}java.util.SortedMap<1:0?,1:0?>?
abstract /* fake */ override fun tailMap(p0: T?): SortedMap<T?, T?>?
// CHECK JVM_IR:
// Mangled name: D#remove(1:0){}1:0?
// Public signature: /D.remove|9192469557374314243[0]
// Public signature debug description: remove(1:0){}1:0?
override fun remove(key: T): T?
// CHECK:
// Mangled name: D{}entries
// Public signature: /D.entries|-586096469347622282[0]
// Public signature debug description: {}entries
abstract /* fake */ override val entries: @EnhancedNullability MutableSet<@EnhancedNullability MutableEntry<T?, T?>>
// CHECK JVM_IR:
// Mangled name: D#<get-entries>(){}kotlin.collections.MutableSet<kotlin.collections.MutableMap.MutableEntry<1:0?,1:0?>{EnhancedNullability}>{EnhancedNullability}
// Public signature: /D.entries.<get-entries>|-3651740414273962157[0]
// Public signature debug description: <get-entries>(){}kotlin.collections.MutableSet<kotlin.collections.MutableMap.MutableEntry<1:0?,1:0?>{EnhancedNullability}>{EnhancedNullability}
abstract /* fake */ override get(): @EnhancedNullability MutableSet<@EnhancedNullability MutableEntry<T?, T?>>
// CHECK:
// Mangled name: D{}keys
// Public signature: /D.keys|-1539062068328255324[0]
// Public signature debug description: {}keys
abstract /* fake */ override val keys: @EnhancedNullability MutableSet<T?>
// CHECK JVM_IR:
// Mangled name: D#<get-keys>(){}kotlin.collections.MutableSet<1:0?>{EnhancedNullability}
// Public signature: /D.keys.<get-keys>|649304329200166856[0]
// Public signature debug description: <get-keys>(){}kotlin.collections.MutableSet<1:0?>{EnhancedNullability}
abstract /* fake */ override get(): @EnhancedNullability MutableSet<T?>
// CHECK:
// Mangled name: D{}values
// Public signature: /D.values|-764749005844117249[0]
// Public signature debug description: {}values
abstract /* fake */ override val values: @EnhancedNullability MutableCollection<T?>
// CHECK JVM_IR:
// Mangled name: D#<get-values>(){}kotlin.collections.MutableCollection<1:0?>{EnhancedNullability}
// Public signature: /D.values.<get-values>|-4281354652209631610[0]
// Public signature debug description: <get-values>(){}kotlin.collections.MutableCollection<1:0?>{EnhancedNullability}
abstract /* fake */ override get(): @EnhancedNullability MutableCollection<T?>
}
// CHECK:
// Mangled name: #test(C<kotlin.Boolean>;D<kotlin.Boolean>){}
// Public signature: /test|-4299498337034679333[0]
// Public signature debug description: test(C<kotlin.Boolean>;D<kotlin.Boolean>){}
fun test(c: C<Boolean>, d: D<Boolean>): Unit