--- /dev/null Mon Sep 23 02:06:04 2013 +++ new/test/type-annotations/java/lang/reflect/Method/MethodGetAnnotatedReturnTypeTest.txt Mon Sep 23 02:06:04 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() {return null;} + +} + + +class TypeAnnoCls2 { + + public @TypeAnno1("TypeAnno1") String m() {return null;} + +} + + +class TypeAnnoCls3 { + + public @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 String m() {return null;} + +} + + +class TypeAnnoCls4 { + + public @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") String m() {return null;} + +} + + +class TypeAnnoCls5 { + + public @TypeAnno3 @TypeAnno3 @TypeAnno3 String m() {return null;} + +} + + +class TypeAnnoCls6 { + + public @TypeAnno3 String m() {return null;} + +} + +