Files
kotlin-fork/compiler/testData/ir/irText/firProblems/ArrayListOverrides.fir.sig.kt.txt
T
Kirill Rakhman 9ec0210c04 [FIR] Support enhancing intersection overrides
When a type annotated with @PurelyImplements (explicitly or implicitly)
inherited some methods from a java supertype and the purely implemented
Kotlin supertype, it was inconsistent which of the signatures the
intersection override would have (with or without flexible types).
This commit adds support for the enhancement of intersection overrides.
If one of the overridden methods has non-flexible types, the enhanced
method will have non-flexible types.
This fixes some false negative nullability type mismatches.

#KT-59921 Fixed
2024-01-31 11:16:50 +00:00

478 lines
27 KiB
Kotlin
Vendored

// CHECK:
// Mangled name: A1
// Public signature: /A1|null[0]
class A1 : ArrayList<String> {
// CHECK:
// Mangled name: A1#<init>(){}
// Public signature: /A1.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: A1#add(kotlin.String{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A1.add|1013043421416614297[0]
// Public signature debug description: add(kotlin.String{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun add(p0: @EnhancedNullability String): Boolean
// CHECK:
// Mangled name: A1#add(kotlin.Int;kotlin.String{EnhancedNullability}){}
// Public signature: /A1.add|-2609504073906581982[0]
// Public signature debug description: add(kotlin.Int;kotlin.String{EnhancedNullability}){}
/* fake */ override fun add(p0: Int, p1: @EnhancedNullability String): Unit
// CHECK JVM_IR:
// Mangled name: A1#addAll(kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A1.addAll|3883602098922245867[0]
// Public signature debug description: addAll(kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun addAll(p0: @EnhancedNullability Collection<out @EnhancedNullability String>): Boolean
// CHECK JVM_IR:
// Mangled name: A1#addAll(kotlin.Int;kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A1.addAll|-1734069118163689030[0]
// Public signature debug description: addAll(kotlin.Int;kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun addAll(p0: Int, p1: @EnhancedNullability Collection<out @EnhancedNullability String>): Boolean
// CHECK:
// Mangled name: A1#clear(){}
// Public signature: /A1.clear|-6446868449915108923[0]
// Public signature debug description: clear(){}
/* fake */ override fun clear(): Unit
// CHECK JVM_IR:
// Mangled name: A1#clone(){}kotlin.Any{EnhancedNullability}
// Public signature: /A1.clone|178802004086941196[0]
// Public signature debug description: clone(){}kotlin.Any{EnhancedNullability}
/* fake */ override fun clone(): @EnhancedNullability Any
// CHECK JVM_IR:
// Mangled name: A1#contains(kotlin.String{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A1.contains|-1288346193708144028[0]
// Public signature debug description: contains(kotlin.String{EnhancedNullability}){}kotlin.Boolean
/* fake */ override operator fun contains(p0: @EnhancedNullability String): Boolean
// CHECK JVM_IR:
// Mangled name: A1#containsAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
// Public signature: /A1.containsAll|3856626117350599597[0]
// Public signature debug description: containsAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
/* fake */ override fun containsAll(p0: Collection<@EnhancedNullability String>): Boolean
// CHECK:
// Mangled name: A1#ensureCapacity(kotlin.Int){}
// Public signature: /A1.ensureCapacity|-7913402150632352615[0]
// Public signature debug description: ensureCapacity(kotlin.Int){}
/* fake */ override fun ensureCapacity(p0: Int): Unit
// CHECK JVM_IR:
// Mangled name: A1#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /A1.equals|722809408929142791[0]
// Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean
/* fake */ override operator fun equals(p0: Any?): Boolean
// CHECK:
// Mangled name: A1#forEach(java.util.function.Consumer<in|kotlin.String?>?){}
// Public signature: /A1.forEach|-5141242812493329438[0]
// Public signature debug description: forEach(java.util.function.Consumer<in|kotlin.String?>?){}
/* fake */ override fun forEach(p0: Consumer<in String?>?): Unit
// CHECK JVM_IR:
// Mangled name: A1#get(kotlin.Int){}kotlin.String{EnhancedNullability}
// Public signature: /A1.get|-5223165249102944743[0]
// Public signature debug description: get(kotlin.Int){}kotlin.String{EnhancedNullability}
/* fake */ override operator fun get(p0: Int): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: A1#hashCode(){}kotlin.Int
// Public signature: /A1.hashCode|-8048879360829830756[0]
// Public signature debug description: hashCode(){}kotlin.Int
/* fake */ override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: A1#indexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
// Public signature: /A1.indexOf|4663174940951508272[0]
// Public signature debug description: indexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
/* fake */ override fun indexOf(p0: @EnhancedNullability String): Int
// CHECK JVM_IR:
// Mangled name: A1#isEmpty(){}kotlin.Boolean
// Public signature: /A1.isEmpty|-626562167393617703[0]
// Public signature debug description: isEmpty(){}kotlin.Boolean
/* fake */ override fun isEmpty(): Boolean
// CHECK JVM_IR:
// Mangled name: A1#iterator(){}kotlin.collections.MutableIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A1.iterator|1587384006376391028[0]
// Public signature debug description: iterator(){}kotlin.collections.MutableIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override operator fun iterator(): @EnhancedNullability MutableIterator<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A1#lastIndexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
// Public signature: /A1.lastIndexOf|546858614952815505[0]
// Public signature debug description: lastIndexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
/* fake */ override fun lastIndexOf(p0: @EnhancedNullability String): Int
// CHECK JVM_IR:
// Mangled name: A1#listIterator(){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A1.listIterator|-4142337689496060808[0]
// Public signature debug description: listIterator(){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override fun listIterator(): @EnhancedNullability MutableListIterator<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A1#listIterator(kotlin.Int){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A1.listIterator|-5700342405546747272[0]
// Public signature debug description: listIterator(kotlin.Int){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override fun listIterator(p0: Int): @EnhancedNullability MutableListIterator<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A1#parallelStream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
// Public signature: /A1.parallelStream|-4896737022635116901[0]
// Public signature debug description: parallelStream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
/* fake */ override fun parallelStream(): @EnhancedNullability Stream<String?>
// CHECK JVM_IR:
// Mangled name: A1#remove(kotlin.String{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A1.remove|2256698784022402098[0]
// Public signature debug description: remove(kotlin.String{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun remove(p0: @EnhancedNullability String): Boolean
// CHECK JVM_IR:
// Mangled name: A1#removeAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
// Public signature: /A1.removeAll|239019554007958597[0]
// Public signature debug description: removeAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
/* fake */ override fun removeAll(p0: Collection<@EnhancedNullability String>): Boolean
// CHECK JVM_IR:
// Mangled name: A1#removeAt(kotlin.Int){}kotlin.String{EnhancedNullability}
// Public signature: /A1.removeAt|-4284695263292850234[0]
// Public signature debug description: removeAt(kotlin.Int){}kotlin.String{EnhancedNullability}
/* fake */ override operator fun removeAt(p0: Int): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: A1#removeIf(java.util.function.Predicate<in|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A1.removeIf|-1670885194148112260[0]
// Public signature debug description: removeIf(java.util.function.Predicate<in|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun removeIf(p0: @EnhancedNullability Predicate<in @EnhancedNullability String>): Boolean
// CHECK:
// Mangled name: A1#removeRange(kotlin.Int;kotlin.Int){}
// Public signature: /A1.removeRange|7632320944993890593[0]
// Public signature debug description: removeRange(kotlin.Int;kotlin.Int){}
protected_and_package /* fake */ override fun removeRange(p0: Int, p1: Int): Unit
// CHECK:
// Mangled name: A1#replaceAll(java.util.function.UnaryOperator<kotlin.String{EnhancedNullability}>{EnhancedNullability}){}
// Public signature: /A1.replaceAll|4357913002581764262[0]
// Public signature debug description: replaceAll(java.util.function.UnaryOperator<kotlin.String{EnhancedNullability}>{EnhancedNullability}){}
/* fake */ override fun replaceAll(p0: @EnhancedNullability UnaryOperator<@EnhancedNullability String>): Unit
// CHECK JVM_IR:
// Mangled name: A1#retainAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
// Public signature: /A1.retainAll|8583629559312465774[0]
// Public signature debug description: retainAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
/* fake */ override fun retainAll(p0: Collection<@EnhancedNullability String>): Boolean
// CHECK JVM_IR:
// Mangled name: A1#set(kotlin.Int;kotlin.String{EnhancedNullability}){}kotlin.String{EnhancedNullability}
// Public signature: /A1.set|-410612784715293145[0]
// Public signature debug description: set(kotlin.Int;kotlin.String{EnhancedNullability}){}kotlin.String{EnhancedNullability}
/* fake */ override operator fun set(p0: Int, p1: @EnhancedNullability String): @EnhancedNullability String
// CHECK:
// Mangled name: A1#sort(java.util.Comparator<in|kotlin.String?>?){}
// Public signature: /A1.sort|5087834210959411894[0]
// Public signature debug description: sort(java.util.Comparator<in|kotlin.String?>?){}
/* fake */ override fun sort(p0: Comparator<in String?>?): Unit
// CHECK JVM_IR:
// Mangled name: A1#spliterator(){}java.util.Spliterator<kotlin.String?>{EnhancedNullability}
// Public signature: /A1.spliterator|568936852624165869[0]
// Public signature debug description: spliterator(){}java.util.Spliterator<kotlin.String?>{EnhancedNullability}
/* fake */ override fun spliterator(): @EnhancedNullability Spliterator<String?>
// CHECK JVM_IR:
// Mangled name: A1#stream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
// Public signature: /A1.stream|-795993718377355146[0]
// Public signature debug description: stream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
/* fake */ override fun stream(): @EnhancedNullability Stream<String?>
// CHECK JVM_IR:
// Mangled name: A1#subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A1.subList|1834706356652401774[0]
// Public signature debug description: subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override fun subList(p0: Int, p1: Int): @EnhancedNullability MutableList<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A1#toArray(){}kotlin.Array<out|kotlin.Any?>?
// Public signature: /A1.toArray|-8468800257910341540[0]
// Public signature debug description: toArray(){}kotlin.Array<out|kotlin.Any?>?
/* fake */ override fun toArray(): Array<out Any?>?
// CHECK JVM_IR:
// Mangled name: A1#toArray(kotlin.Array<out|0:0?>?){0§<kotlin.Any?>}kotlin.Array<out|0:0?>?
// Public signature: /A1.toArray|-7248906015406159030[0]
// Public signature debug description: toArray(kotlin.Array<out|0:0?>?){0§<kotlin.Any?>}kotlin.Array<out|0:0?>?
/* fake */ override fun <T : Any?> toArray(p0: Array<out T?>?): Array<out T?>?
// CHECK JVM_IR:
// Mangled name: A1#toString(){}kotlin.String{EnhancedNullability}
// Public signature: /A1.toString|7581629773206850948[0]
// Public signature debug description: toString(){}kotlin.String{EnhancedNullability}
/* fake */ override fun toString(): @EnhancedNullability String
// CHECK:
// Mangled name: A1#trimToSize(){}
// Public signature: /A1.trimToSize|-5937642362792008740[0]
// Public signature debug description: trimToSize(){}
/* fake */ override fun trimToSize(): Unit
// CHECK:
// Mangled name: A1{}size
// Public signature: /A1.size|-6253659984320132064[0]
// Public signature debug description: {}size
/* fake */ override val size: Int
// CHECK JVM_IR:
// Mangled name: A1#<get-size>(){}kotlin.Int
// Public signature: /A1.size.<get-size>|-3941649985161900780[0]
// Public signature debug description: <get-size>(){}kotlin.Int
/* fake */ override get(): Int
}
// CHECK:
// Mangled name: A2
// Public signature: /A2|null[0]
class A2 : ArrayList<String> {
// CHECK:
// Mangled name: A2#<init>(){}
// Public signature: /A2.<init>|-5645683436151566731[0]
// Public signature debug description: <init>(){}
constructor() /* primary */
// CHECK JVM_IR:
// Mangled name: A2#add(kotlin.String{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A2.add|1013043421416614297[0]
// Public signature debug description: add(kotlin.String{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun add(p0: @EnhancedNullability String): Boolean
// CHECK:
// Mangled name: A2#add(kotlin.Int;kotlin.String{EnhancedNullability}){}
// Public signature: /A2.add|-2609504073906581982[0]
// Public signature debug description: add(kotlin.Int;kotlin.String{EnhancedNullability}){}
/* fake */ override fun add(p0: Int, p1: @EnhancedNullability String): Unit
// CHECK JVM_IR:
// Mangled name: A2#addAll(kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A2.addAll|3883602098922245867[0]
// Public signature debug description: addAll(kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun addAll(p0: @EnhancedNullability Collection<out @EnhancedNullability String>): Boolean
// CHECK JVM_IR:
// Mangled name: A2#addAll(kotlin.Int;kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A2.addAll|-1734069118163689030[0]
// Public signature debug description: addAll(kotlin.Int;kotlin.collections.Collection<out|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun addAll(p0: Int, p1: @EnhancedNullability Collection<out @EnhancedNullability String>): Boolean
// CHECK:
// Mangled name: A2#clear(){}
// Public signature: /A2.clear|-6446868449915108923[0]
// Public signature debug description: clear(){}
/* fake */ override fun clear(): Unit
// CHECK JVM_IR:
// Mangled name: A2#clone(){}kotlin.Any{EnhancedNullability}
// Public signature: /A2.clone|178802004086941196[0]
// Public signature debug description: clone(){}kotlin.Any{EnhancedNullability}
/* fake */ override fun clone(): @EnhancedNullability Any
// CHECK JVM_IR:
// Mangled name: A2#contains(kotlin.String{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A2.contains|-1288346193708144028[0]
// Public signature debug description: contains(kotlin.String{EnhancedNullability}){}kotlin.Boolean
/* fake */ override operator fun contains(p0: @EnhancedNullability String): Boolean
// CHECK JVM_IR:
// Mangled name: A2#containsAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
// Public signature: /A2.containsAll|3856626117350599597[0]
// Public signature debug description: containsAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
/* fake */ override fun containsAll(p0: Collection<@EnhancedNullability String>): Boolean
// CHECK:
// Mangled name: A2#ensureCapacity(kotlin.Int){}
// Public signature: /A2.ensureCapacity|-7913402150632352615[0]
// Public signature debug description: ensureCapacity(kotlin.Int){}
/* fake */ override fun ensureCapacity(p0: Int): Unit
// CHECK JVM_IR:
// Mangled name: A2#equals(kotlin.Any?){}kotlin.Boolean
// Public signature: /A2.equals|722809408929142791[0]
// Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean
/* fake */ override operator fun equals(p0: Any?): Boolean
// CHECK:
// Mangled name: A2#forEach(java.util.function.Consumer<in|kotlin.String?>?){}
// Public signature: /A2.forEach|-5141242812493329438[0]
// Public signature debug description: forEach(java.util.function.Consumer<in|kotlin.String?>?){}
/* fake */ override fun forEach(p0: Consumer<in String?>?): Unit
// CHECK JVM_IR:
// Mangled name: A2#get(kotlin.Int){}kotlin.String{EnhancedNullability}
// Public signature: /A2.get|-5223165249102944743[0]
// Public signature debug description: get(kotlin.Int){}kotlin.String{EnhancedNullability}
/* fake */ override operator fun get(p0: Int): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: A2#hashCode(){}kotlin.Int
// Public signature: /A2.hashCode|-8048879360829830756[0]
// Public signature debug description: hashCode(){}kotlin.Int
/* fake */ override fun hashCode(): Int
// CHECK JVM_IR:
// Mangled name: A2#indexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
// Public signature: /A2.indexOf|4663174940951508272[0]
// Public signature debug description: indexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
/* fake */ override fun indexOf(p0: @EnhancedNullability String): Int
// CHECK JVM_IR:
// Mangled name: A2#isEmpty(){}kotlin.Boolean
// Public signature: /A2.isEmpty|-626562167393617703[0]
// Public signature debug description: isEmpty(){}kotlin.Boolean
/* fake */ override fun isEmpty(): Boolean
// CHECK JVM_IR:
// Mangled name: A2#iterator(){}kotlin.collections.MutableIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A2.iterator|1587384006376391028[0]
// Public signature debug description: iterator(){}kotlin.collections.MutableIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override operator fun iterator(): @EnhancedNullability MutableIterator<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A2#lastIndexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
// Public signature: /A2.lastIndexOf|546858614952815505[0]
// Public signature debug description: lastIndexOf(kotlin.String{EnhancedNullability}){}kotlin.Int
/* fake */ override fun lastIndexOf(p0: @EnhancedNullability String): Int
// CHECK JVM_IR:
// Mangled name: A2#listIterator(){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A2.listIterator|-4142337689496060808[0]
// Public signature debug description: listIterator(){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override fun listIterator(): @EnhancedNullability MutableListIterator<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A2#listIterator(kotlin.Int){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A2.listIterator|-5700342405546747272[0]
// Public signature debug description: listIterator(kotlin.Int){}kotlin.collections.MutableListIterator<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override fun listIterator(p0: Int): @EnhancedNullability MutableListIterator<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A2#parallelStream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
// Public signature: /A2.parallelStream|-4896737022635116901[0]
// Public signature debug description: parallelStream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
/* fake */ override fun parallelStream(): @EnhancedNullability Stream<String?>
// CHECK JVM_IR:
// Mangled name: A2#removeAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
// Public signature: /A2.removeAll|239019554007958597[0]
// Public signature debug description: removeAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
/* fake */ override fun removeAll(p0: Collection<@EnhancedNullability String>): Boolean
// CHECK JVM_IR:
// Mangled name: A2#removeAt(kotlin.Int){}kotlin.String{EnhancedNullability}
// Public signature: /A2.removeAt|-4284695263292850234[0]
// Public signature debug description: removeAt(kotlin.Int){}kotlin.String{EnhancedNullability}
/* fake */ override operator fun removeAt(p0: Int): @EnhancedNullability String
// CHECK JVM_IR:
// Mangled name: A2#removeIf(java.util.function.Predicate<in|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
// Public signature: /A2.removeIf|-1670885194148112260[0]
// Public signature debug description: removeIf(java.util.function.Predicate<in|kotlin.String{EnhancedNullability}>{EnhancedNullability}){}kotlin.Boolean
/* fake */ override fun removeIf(p0: @EnhancedNullability Predicate<in @EnhancedNullability String>): Boolean
// CHECK:
// Mangled name: A2#removeRange(kotlin.Int;kotlin.Int){}
// Public signature: /A2.removeRange|7632320944993890593[0]
// Public signature debug description: removeRange(kotlin.Int;kotlin.Int){}
protected_and_package /* fake */ override fun removeRange(p0: Int, p1: Int): Unit
// CHECK:
// Mangled name: A2#replaceAll(java.util.function.UnaryOperator<kotlin.String{EnhancedNullability}>{EnhancedNullability}){}
// Public signature: /A2.replaceAll|4357913002581764262[0]
// Public signature debug description: replaceAll(java.util.function.UnaryOperator<kotlin.String{EnhancedNullability}>{EnhancedNullability}){}
/* fake */ override fun replaceAll(p0: @EnhancedNullability UnaryOperator<@EnhancedNullability String>): Unit
// CHECK JVM_IR:
// Mangled name: A2#retainAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
// Public signature: /A2.retainAll|8583629559312465774[0]
// Public signature debug description: retainAll(kotlin.collections.Collection<kotlin.String{EnhancedNullability}>){}kotlin.Boolean
/* fake */ override fun retainAll(p0: Collection<@EnhancedNullability String>): Boolean
// CHECK JVM_IR:
// Mangled name: A2#set(kotlin.Int;kotlin.String{EnhancedNullability}){}kotlin.String{EnhancedNullability}
// Public signature: /A2.set|-410612784715293145[0]
// Public signature debug description: set(kotlin.Int;kotlin.String{EnhancedNullability}){}kotlin.String{EnhancedNullability}
/* fake */ override operator fun set(p0: Int, p1: @EnhancedNullability String): @EnhancedNullability String
// CHECK:
// Mangled name: A2#sort(java.util.Comparator<in|kotlin.String?>?){}
// Public signature: /A2.sort|5087834210959411894[0]
// Public signature debug description: sort(java.util.Comparator<in|kotlin.String?>?){}
/* fake */ override fun sort(p0: Comparator<in String?>?): Unit
// CHECK JVM_IR:
// Mangled name: A2#spliterator(){}java.util.Spliterator<kotlin.String?>{EnhancedNullability}
// Public signature: /A2.spliterator|568936852624165869[0]
// Public signature debug description: spliterator(){}java.util.Spliterator<kotlin.String?>{EnhancedNullability}
/* fake */ override fun spliterator(): @EnhancedNullability Spliterator<String?>
// CHECK JVM_IR:
// Mangled name: A2#stream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
// Public signature: /A2.stream|-795993718377355146[0]
// Public signature debug description: stream(){}java.util.stream.Stream<kotlin.String?>{EnhancedNullability}
/* fake */ override fun stream(): @EnhancedNullability Stream<String?>
// CHECK JVM_IR:
// Mangled name: A2#subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList<kotlin.String{EnhancedNullability}>{EnhancedNullability}
// Public signature: /A2.subList|1834706356652401774[0]
// Public signature debug description: subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList<kotlin.String{EnhancedNullability}>{EnhancedNullability}
/* fake */ override fun subList(p0: Int, p1: Int): @EnhancedNullability MutableList<@EnhancedNullability String>
// CHECK JVM_IR:
// Mangled name: A2#toArray(){}kotlin.Array<out|kotlin.Any?>?
// Public signature: /A2.toArray|-8468800257910341540[0]
// Public signature debug description: toArray(){}kotlin.Array<out|kotlin.Any?>?
/* fake */ override fun toArray(): Array<out Any?>?
// CHECK JVM_IR:
// Mangled name: A2#toArray(kotlin.Array<out|0:0?>?){0§<kotlin.Any?>}kotlin.Array<out|0:0?>?
// Public signature: /A2.toArray|-7248906015406159030[0]
// Public signature debug description: toArray(kotlin.Array<out|0:0?>?){0§<kotlin.Any?>}kotlin.Array<out|0:0?>?
/* fake */ override fun <T : Any?> toArray(p0: Array<out T?>?): Array<out T?>?
// CHECK JVM_IR:
// Mangled name: A2#toString(){}kotlin.String{EnhancedNullability}
// Public signature: /A2.toString|7581629773206850948[0]
// Public signature debug description: toString(){}kotlin.String{EnhancedNullability}
/* fake */ override fun toString(): @EnhancedNullability String
// CHECK:
// Mangled name: A2#trimToSize(){}
// Public signature: /A2.trimToSize|-5937642362792008740[0]
// Public signature debug description: trimToSize(){}
/* fake */ override fun trimToSize(): Unit
// CHECK JVM_IR:
// Mangled name: A2#remove(kotlin.String){}kotlin.Boolean
// Public signature: /A2.remove|-4681585628882047709[0]
// Public signature debug description: remove(kotlin.String){}kotlin.Boolean
override fun remove(x: String): Boolean
// CHECK:
// Mangled name: A2{}size
// Public signature: /A2.size|-6253659984320132064[0]
// Public signature debug description: {}size
/* fake */ override val size: Int
// CHECK JVM_IR:
// Mangled name: A2#<get-size>(){}kotlin.Int
// Public signature: /A2.size.<get-size>|-3941649985161900780[0]
// Public signature debug description: <get-size>(){}kotlin.Int
/* fake */ override get(): Int
}