1 package java.lang: 2 annotation @A: @java.lang.annotation.Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE}) 3 4 package java.lang: 5 annotation @B: @java.lang.annotation.Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE}) 6 7 package java.lang: 8 annotation @C: @java.lang.annotation.Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE}) 9 10 package java.lang: 11 annotation @D: @java.lang.annotation.Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE}) 12 13 package java.lang: 14 annotation @E: @java.lang.annotation.Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE}) 15 16 package java.lang: 17 annotation @F: @java.lang.annotation.Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE}) 18 19 package annotator.tests: 20 class BoundMethodMultiple: 21 22 method foo(Ljava/lang/Object;)V: 23 return: 24 insert-annotation Method.parameter 0, Variable.type: @java.lang.A 25 26 method foo(Ljava/util/Date;)V: 27 return: 28 insert-annotation Method.typeParameter 0, TypeParameter.bound 0: @java.lang.B 29 30 method foo(Ljava/util/List;)V: 31 return: 32 insert-annotation Method.typeParameter 0, TypeParameter.bound 0: @java.lang.C 33 insert-annotation Method.typeParameter 0, TypeParameter.bound 1: @java.lang.D 34 35 method foo(Ljava/util/Date;Ljava/util/Map;)V: 36 return: 37 insert-annotation Method.typeParameter 0, TypeParameter.bound 0: @java.lang.E 38 insert-annotation Method.typeParameter 1, TypeParameter.bound 0: @java.lang.F 39 40