--- /dev/null
+package com.foo;
+import java.lang.annotation.*;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Anno {
+}
--- /dev/null
+package com.foo;
+import java.lang.annotation.*;
+
+@Deprecated
+@Inherited
+@Retention(RetentionPolicy.CLASS)
+public @interface Anno2 {
+}
--- /dev/null
+package com.foo;
+import java.lang.annotation.*;
+
+@Anno
+@Retention(RetentionPolicy.SOURCE)
+public @interface Anno3 {
+}
--- /dev/null
+package com.foo;
+import java.lang.annotation.*;
+
+@Anno
+@Anno2
+public @interface Anno4 {
+}
--- /dev/null
+package com.foo;
+
+import java.lang.annotation.*;
+
+@Target({ElementType.TYPE,ElementType.FIELD})
+public @interface Anno5 {
+}
--- /dev/null
+package com.foo;
+
+import java.lang.annotation.*;
+
+@Target({ElementType.ANNOTATION_TYPE,ElementType.LOCAL_VARIABLE,ElementType.METHOD,ElementType.PACKAGE,ElementType.PARAMETER,ElementType.CONSTRUCTOR})
+public @interface Anno6 {
+}
--- /dev/null
+package com.foo;
+
+public class Bar {
+}
--- /dev/null
+package com.foo;
+
+enum Color {R,G,B}
--- /dev/null
+package com.foo;
+
+public @interface ColorAnno {
+ Color c();
+}
--- /dev/null
+package com.foo;
+
+@ColorAnno(c=Color.G)
+public class Colored {
+}
--- /dev/null
+package com.foo;
+
+public class Extender extends Super implements Marker {
+ public void aMethod(String aString) {}
+ public int aField;
+
+}
+
+class Super {}
+
+interface Marker {}
--- /dev/null
+package com.foo;
+
+public class Inners {
+
+
+ public static class Inner {
+ }
+
+ Runnable r = new Runnable() {
+ public void run() {
+ }
+ };
+}
--- /dev/null
+package com;
+import java.lang.annotation.*;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Anno {}
--- /dev/null
+package com;
+import java.lang.annotation.*;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Anno2 {
+ int a();
+}
--- /dev/null
+package com;
+
+import java.util.*;
+
+public class Foo {
+
+ public int i;
+ public String s;
+
+ @Anno
+ public List<String> ls;
+
+ @Anno2(a=42) @Anno
+ public List<Integer> li;
+}
--- /dev/null
+package com;
+import java.lang.annotation.*;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Anno {}
--- /dev/null
+package com;
+import java.lang.annotation.*;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Anno2 {
+ int a();
+}
--- /dev/null
+package com;
+import java.util.List;
+
+public class Meths {
+
+ @Anno
+ public void m() { }
+
+ @Anno @Anno2(a=3254)
+ private List<String> n(int i,long l,List<Integer> li) {return null;}
+
+}
--- /dev/null
+package com;
+
+public class One {
+ public class Inner {
+ }
+ public static class StaticInner {
+ }
+}
--- /dev/null
+package com;
+
+public class Two {
+ public static void main(String[] argv) {
+ new One();
+ }
+}