// TARGET_BACKEND: JVM // JDK_KIND: FULL_JDK_21 // WITH_STDLIB // SEPARATE_SIGNATURE_DUMP_FOR_K2 // ^ ISSUE: KT-63914, KT-65219 // FILE: 1.kt import java.util.* class A : LinkedList(), List class B : LinkedList(), List { override fun remove(): Int { return 1 } override fun removeAt(index: Int): Int { return 1 } override fun remove(element: Int): Boolean { return true } override val size: Int get() = 2 override fun addFirst(e: Int?) {} } class C : LinkedList(), MutableList class D : LinkedList(), MutableList{ override fun get(index: Int): Int? { return 2 } override fun remove(): Int? { return 2 } override fun removeAt(index: Int): Int? { return 2 } override fun remove(element: Int?): Boolean { return true } override fun addLast(e: Int?) { } } fun test(a: A, b: B, c: C, d: D){ a.size a.add(1) a.get(0) a.remove() a.removeAt(1) a.remove(1) a.addFirst(1) a.addLast(null) a.removeFirst() a.removeLast() b.size b.add(1) b.get(0) b.remove() b.removeAt(1) b.remove(1) b.addFirst(1) b.addLast(null) b.removeFirst() b.removeLast() c.size c.add(1) c.get(0) c.remove() c.removeAt(1) c.remove(1) c.addFirst(1) c.addLast(null) c.removeFirst() c.removeLast() d.size d.add(1) d.get(0) d.remove() d.removeAt(1) d.remove(1) d.addFirst(1) d.addLast(null) d.removeFirst() d.removeLast() }