--- /dev/null Mon Sep 23 02:05:58 2013 +++ new/test/type-annotations/java/lang/reflect/Executable/ExecutableGetAnnotatedReceiverTypeTest.txt Mon Sep 23 02:05:56 2013 @@ -0,0 +1,87 @@ + +import java.io.*; +import java.util.*; +import java.lang.*; +import java.lang.reflect.*; +import java.lang.annotation.*; + + +class TypeAnnoCls0 { + +} + +@Target(ElementType.TYPE_USE) +@Retention(RetentionPolicy.RUNTIME) +@Repeatable(TypeAnno1Container.class) +@interface TypeAnno1 { + String value(); +} +@Target(ElementType.TYPE_USE) +@Retention(RetentionPolicy.RUNTIME) +@Repeatable(TypeAnno2Container.class) +@interface TypeAnno2 { + String value(); +} +@Target(ElementType.TYPE_USE) +@Retention(RetentionPolicy.RUNTIME) +@Repeatable(TypeAnno3Container.class) +@interface TypeAnno3 { +} +@Target(ElementType.TYPE_USE) +@Retention(RetentionPolicy.RUNTIME) +@interface TypeAnno1Container { + TypeAnno1[] value(); +} +@Target(ElementType.TYPE_USE) +@Retention(RetentionPolicy.RUNTIME) +@interface TypeAnno2Container { + TypeAnno2[] value(); +} +@Target(ElementType.TYPE_USE) +@Retention(RetentionPolicy.RUNTIME) +@interface TypeAnno3Container { + TypeAnno3[] value(); +} + +class TypeAnnoCls1 { + + public String m( TypeAnnoCls1 this) {return null;} + +} + + +class TypeAnnoCls2 { + + public String m(@TypeAnno1("TypeAnno1") TypeAnnoCls2 this) {return null;} + +} + + +class TypeAnnoCls3 { + + public String m(@TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 TypeAnnoCls3 this) {return null;} + +} + + +class TypeAnnoCls4 { + + public String m(@TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") TypeAnnoCls4 this) {return null;} + +} + + +class TypeAnnoCls5 { + + public String m(@TypeAnno3 @TypeAnno3 @TypeAnno3 TypeAnnoCls5 this) {return null;} + +} + + +class TypeAnnoCls6 { + + public String m(@TypeAnno3 TypeAnnoCls6 this) {return null;} + +} + +