package ann // CHECK: // Mangled name: ann.Test1 // Public signature: ann/Test1|null[0] open annotation class Test1 : Annotation { // CHECK: // Mangled name: ann.Test1{}x // Public signature: ann/Test1.x|-8060530855978347579[0] // Public signature debug description: {}x val x: Int // CHECK JVM_IR: // Mangled name: ann.Test1#(){}kotlin.Int // Public signature: ann/Test1.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: // Mangled name: ann.Test1#(){} // Public signature: ann/Test1.x.|1482705010654679335[0] // Public signature debug description: (){} get // CHECK: // Mangled name: ann.Test1#(kotlin.Int){} // Public signature: ann/Test1.|-5182794243525578284[0] // Public signature debug description: (kotlin.Int){} constructor(x: Int) /* primary */ } // CHECK: // Mangled name: ann.Test2 // Public signature: ann/Test2|null[0] open annotation class Test2 : Annotation { // CHECK: // Mangled name: ann.Test2{}x // Public signature: ann/Test2.x|-8060530855978347579[0] // Public signature debug description: {}x val x: Int // CHECK JVM_IR: // Mangled name: ann.Test2#(){}kotlin.Int // Public signature: ann/Test2.x.|4966956098150895696[0] // Public signature debug description: (){}kotlin.Int // CHECK JS_IR NATIVE: // Mangled name: ann.Test2#(){} // Public signature: ann/Test2.x.|1482705010654679335[0] // Public signature debug description: (){} get // CHECK: // Mangled name: ann.Test2#(kotlin.Int){} // Public signature: ann/Test2.|-5182794243525578284[0] // Public signature debug description: (kotlin.Int){} constructor(x: Int) /* primary */ } // CHECK: // Mangled name: ann.Test3 // Public signature: ann/Test3|null[0] open annotation class Test3> : Annotation { // CHECK: // Mangled name: ann.Test3{}x // Public signature: ann/Test3.x|-8060530855978347579[0] // Public signature debug description: {}x val x: Test1> // CHECK JVM_IR: // Mangled name: ann.Test3#(){}ann.Test1> // Public signature: ann/Test3.x.|-476605448158023096[0] // Public signature debug description: (){}ann.Test1> // CHECK JS_IR NATIVE: // Mangled name: ann.Test3#(){} // Public signature: ann/Test3.x.|1482705010654679335[0] // Public signature debug description: (){} get // CHECK: // Mangled name: ann.Test3#(ann.Test1>){} // Public signature: ann/Test3.|-7213108781936914004[0] // Public signature debug description: (ann.Test1>){} constructor(x: Test1>) /* primary */ } // CHECK: // Mangled name: ann.Test4 // Public signature: ann/Test4|null[0] open annotation class Test4 : Annotation { // CHECK: // Mangled name: ann.Test4{}x // Public signature: ann/Test4.x|-8060530855978347579[0] // Public signature debug description: {}x val x: Array>> // CHECK JVM_IR: // Mangled name: ann.Test4#(){}kotlin.Array>> // Public signature: ann/Test4.x.|-4754126975303916738[0] // Public signature debug description: (){}kotlin.Array>> // CHECK JS_IR NATIVE: // Mangled name: ann.Test4#(){} // Public signature: ann/Test4.x.|1482705010654679335[0] // Public signature debug description: (){} get // CHECK: // Mangled name: ann.Test4#(kotlin.Array>>){} // Public signature: ann/Test4.|8552260922942750189[0] // Public signature debug description: (kotlin.Array>>){} constructor(x: Array>>) /* primary */ } // CHECK: // Mangled name: ann.Test5 // Public signature: ann/Test5|null[0] open annotation class Test5 : Annotation { // CHECK: // Mangled name: ann.Test5{}xs // Public signature: ann/Test5.xs|1063330853857063704[0] // Public signature debug description: {}xs val xs: Array>> // CHECK JVM_IR: // Mangled name: ann.Test5#(){}kotlin.Array>> // Public signature: ann/Test5.xs.|-4480240150602494549[0] // Public signature debug description: (){}kotlin.Array>> // CHECK JS_IR NATIVE: // Mangled name: ann.Test5#(){} // Public signature: ann/Test5.xs.|-6958094100501701183[0] // Public signature debug description: (){} get // CHECK: // Mangled name: ann.Test5#(kotlin.Array>>...){} // Public signature: ann/Test5.|4580033169902184740[0] // Public signature debug description: (kotlin.Array>>...){} constructor(vararg xs: Test3>) /* primary */ } // CHECK: // Mangled name: ann.ARG // Public signature: ann/ARG|null[0] class ARG { // CHECK: // Mangled name: ann.ARG#(){} // Public signature: ann/ARG.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ } // CHECK: // Mangled name: ann.C // Public signature: ann/C|null[0] class C : I { // CHECK: // Mangled name: ann.C#(){} // Public signature: ann/C.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ } // CHECK: // Mangled name: ann.CC // Public signature: ann/CC|null[0] @Test1(x = 42) @Test2(x = 38) @Test3>(x = Test1>>(x = 39)) @Test4(x = [Test3>(x = Test1>>(x = 40)), Test3>(x = Test1>>(x = 50)), Test3>(x = Test1>>(x = 60))]) @Test5(xs = [[Test3>(x = Test1>>(x = 70))], [Test3>(x = Test1>>(x = 80))]]) class CC { // CHECK: // Mangled name: ann.CC#(){} // Public signature: ann/CC.|-5645683436151566731[0] // Public signature debug description: (){} constructor() /* primary */ } // CHECK: // Mangled name: ann.I // Public signature: ann/I|null[0] interface I { }