1 package annotator.tests: 2 annotation @A: @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE_USE}) 3 annotation @B: @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE_USE}) 4 annotation @C: @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE_USE}) 5 annotation @X: @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE_USE}) 6 annotation @Y: @java.lang.annotation.Target({java.lang.annotation.ElementType.TYPE_USE}) 7 8 class BoundZero: 9 bound 0&0: @A @B @C 10 11 method m1(Ljava/lang/Object;)V: 12 bound 0&0: @X @Y 13 14 method m2(Ljava/lang/Object;)V: 15 bound 0&0: @X 16 17 method m3(Ljava/lang/Object;)V: 18 bound 0&0: @X 19 20 method m4(Ljava/lang/Object;)V: 21 bound 0&0: @X @Y 22 23 method m5(Ljava/lang/Object;)V: 24 bound 0&0: @X 25 26 method m6(Ljava/lang/Object;)V: 27 bound 0&0: @X 28 29 method m7(Ljava/lang/Object;)V: 30 bound 0&0: @X 31 bound 0&1: @Y 32 33 method m8(Ljava/lang/Object;)V: 34 bound 0&0: @X 35 36 method m9(Ljava/lang/Object;)V: 37 bound 0&0: @X 38 39 class BoundZero$Inner: 40 bound 0&0: @A @B @C 41 42 class Outer: 43 bound 0&0: @A @B @C 44 45