// CHECK: // Mangled name: C // Public signature: /C|null[0] abstract class C : Java1, KotlinInterface { // CHECK: // Mangled name: C#(){} // Public signature: /C.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ // CHECK JVM_IR: // Mangled name: C#bar(){}java.util.ArrayList // Public signature: /C.bar|3123552224271008170[0] // Public signature debug description: bar(){}java.util.ArrayList /* fake */ override fun bar(): ArrayList // CHECK JVM_IR: // Mangled name: C#foo(){}1:0 // Public signature: /C.foo|-5478580208809996038[0] // Public signature debug description: foo(){}1:0 /* fake */ override fun foo(): R } // CHECK: // Mangled name: KotlinInterface // Public signature: /KotlinInterface|null[0] interface KotlinInterface { // CHECK JVM_IR: // Mangled name: KotlinInterface#bar(){}java.util.ArrayList // Public signature: /KotlinInterface.bar|3123552224271008170[0] // Public signature debug description: bar(){}java.util.ArrayList abstract fun bar(): ArrayList // CHECK JVM_IR: // Mangled name: KotlinInterface#foo(){}1:0 // Public signature: /KotlinInterface.foo|-5478580208809996038[0] // Public signature debug description: foo(){}1:0 abstract fun foo(): T }