// CHECK: // Mangled name: I1 // Public signature: /I1|null[0] interface I1 { } // CHECK: // Mangled name: I2 // Public signature: /I2|null[0] interface I2 { } // CHECK JVM_IR: // Mangled name: #component1@I1(){}kotlin.Int // Public signature: /component1|8801376328143328436[0] // Public signature debug description: component1@I1(){}kotlin.Int // CHECK JS_IR NATIVE: // Mangled name: #component1@I1(){} // Public signature: /component1|-7381230852082083752[0] // Public signature debug description: component1@I1(){} operator fun I1.component1(): Int // CHECK JVM_IR: // Mangled name: #component2@I2(){}kotlin.String // Public signature: /component2|-3393912940495634771[0] // Public signature debug description: component2@I2(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: #component2@I2(){} // Public signature: /component2|-7506551577483428650[0] // Public signature debug description: component2@I2(){} operator fun I2.component2(): String // CHECK: // Mangled name: #test(I1){} // Public signature: /test|-2567635956051433615[0] // Public signature debug description: test(I1){} fun test(x: I1): Unit