// CHECK: // Mangled name: DefaultImpl // Public signature: /DefaultImpl|null[0] class DefaultImpl : IFoo { // CHECK: // Mangled name: DefaultImpl#(){} // Public signature: /DefaultImpl.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ // CHECK: // Mangled name: DefaultImpl@kotlin.String{}extProp // Public signature: /DefaultImpl.extProp|9137761441129982647[0] // Public signature debug description: @kotlin.String{}extProp /* fake */ override val String.extProp: String // CHECK JVM_IR: // Mangled name: DefaultImpl#@kotlin.String(){}kotlin.String // Public signature: /DefaultImpl.extProp.|-8732758648969586151[0] // Public signature debug description: @kotlin.String(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: DefaultImpl#@kotlin.String(){} // Public signature: /DefaultImpl.extProp.|-2957953481772901234[0] // Public signature debug description: @kotlin.String(){} /* fake */ override get(): String // CHECK: // Mangled name: DefaultImpl{}prop // Public signature: /DefaultImpl.prop|3598315380056892812[0] // Public signature debug description: {}prop /* fake */ override val prop: String // CHECK JVM_IR: // Mangled name: DefaultImpl#(){}kotlin.String // Public signature: /DefaultImpl.prop.|-4077144726618700772[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: DefaultImpl#(){} // Public signature: /DefaultImpl.prop.|-5734736374948136327[0] // Public signature debug description: (){} /* fake */ override get(): String } // CHECK: // Mangled name: Delegated // Public signature: /Delegated|null[0] class Delegated : IFoo { // CHECK: // Mangled name: Delegated#(IFoo){} // Public signature: /Delegated.|-657369904845510135[0] // Public signature debug description: (IFoo){} constructor(foo: IFoo) /* primary */ // CHECK: // Mangled name: Delegated@kotlin.String{}extProp // Public signature: /Delegated.extProp|9137761441129982647[0] // Public signature debug description: @kotlin.String{}extProp override val String.extProp: String // CHECK JVM_IR: // Mangled name: Delegated#@kotlin.String(){}kotlin.String // Public signature: /Delegated.extProp.|-8732758648969586151[0] // Public signature debug description: @kotlin.String(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: Delegated#@kotlin.String(){} // Public signature: /Delegated.extProp.|-2957953481772901234[0] // Public signature debug description: @kotlin.String(){} override get(): String // CHECK: // Mangled name: Delegated{}prop // Public signature: /Delegated.prop|3598315380056892812[0] // Public signature debug description: {}prop override val prop: String // CHECK JVM_IR: // Mangled name: Delegated#(){}kotlin.String // Public signature: /Delegated.prop.|-4077144726618700772[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: Delegated#(){} // Public signature: /Delegated.prop.|-5734736374948136327[0] // Public signature debug description: (){} override get(): String } // CHECK: // Mangled name: ExplicitOverride // Public signature: /ExplicitOverride|null[0] class ExplicitOverride : IFoo { // CHECK: // Mangled name: ExplicitOverride#(){} // Public signature: /ExplicitOverride.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ // CHECK: // Mangled name: ExplicitOverride@kotlin.String{}extProp // Public signature: /ExplicitOverride.extProp|9137761441129982647[0] // Public signature debug description: @kotlin.String{}extProp override val String.extProp: String // CHECK JVM_IR: // Mangled name: ExplicitOverride#@kotlin.String(){}kotlin.String // Public signature: /ExplicitOverride.extProp.|-8732758648969586151[0] // Public signature debug description: @kotlin.String(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: ExplicitOverride#@kotlin.String(){} // Public signature: /ExplicitOverride.extProp.|-2957953481772901234[0] // Public signature debug description: @kotlin.String(){} override get(): String // CHECK: // Mangled name: ExplicitOverride{}prop // Public signature: /ExplicitOverride.prop|3598315380056892812[0] // Public signature debug description: {}prop override val prop: String // CHECK JVM_IR: // Mangled name: ExplicitOverride#(){}kotlin.String // Public signature: /ExplicitOverride.prop.|-4077144726618700772[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: ExplicitOverride#(){} // Public signature: /ExplicitOverride.prop.|-5734736374948136327[0] // Public signature debug description: (){} override get(): String } // CHECK: // Mangled name: IFoo // Public signature: /IFoo|null[0] interface IFoo { // CHECK: // Mangled name: IFoo@kotlin.String{}extProp // Public signature: /IFoo.extProp|9137761441129982647[0] // Public signature debug description: @kotlin.String{}extProp val String.extProp: String // CHECK JVM_IR: // Mangled name: IFoo#@kotlin.String(){}kotlin.String // Public signature: /IFoo.extProp.|-8732758648969586151[0] // Public signature debug description: @kotlin.String(){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: IFoo#@kotlin.String(){} // Public signature: /IFoo.extProp.|-2957953481772901234[0] // Public signature debug description: @kotlin.String(){} get(): String // CHECK: // Mangled name: IFoo{}prop // Public signature: /IFoo.prop|3598315380056892812[0] // Public signature debug description: {}prop val prop: String // CHECK JVM_IR: // Mangled name: IFoo#(){}kotlin.String // Public signature: /IFoo.prop.|-4077144726618700772[0] // Public signature debug description: (){}kotlin.String // CHECK JS_IR NATIVE: // Mangled name: IFoo#(){} // Public signature: /IFoo.prop.|-5734736374948136327[0] // Public signature debug description: (){} get(): String }