annotation class Ann(val i: IntArray) Ann(intArray(i)) Ann(intArray(i2)) Ann(intArray(i3)) Ann(intArray(i, i2, i3)) Ann(intArray(intArray(i, i2, i3))) class Test var i = 1 val i2 = 1 val i3 = foo() fun foo(): Int = 1 annotation class AnnJC(val i: Array>) AnnJC(array(javaClass())) AnnJC(array(iJC)) class TestJC val iJC = javaClass() annotation class AnnAnn(val i: Array) AnnAnn(array(Ann(intArray(1)))) AnnAnn(array(iAnn)) class TestAnn val iAnn = Ann(intArray(1))