open annotation class A1 : Annotation { val x: Int field = x get constructor(x: Int) /* primary */ { super/*Any*/() /* () */ } } open annotation class A2 : Annotation { val a: A1 field = a get constructor(a: A1) /* primary */ { super/*Any*/() /* () */ } } open annotation class AA : Annotation { val xs: Array field = xs get constructor(xs: Array) /* primary */ { super/*Any*/() /* () */ } } @A2(a = A1(x = 42)) @AA(xs = [A1(x = 1), A1(x = 2)]) fun test() { }