Fri, 02 Nov 2012 14:35:57 -0700
7169362: JDK8: Write compiler tests for repeating annotations for JDK8
Reviewed-by: darcy, jjg
Contributed-by: sonali.goel@oracle.com
jjg@1386 | 1 | /** |
jjg@1386 | 2 | * @test /nodynamiccopyright/ |
jjg@1386 | 3 | * @bug 7169362 |
jjg@1386 | 4 | * @author sogoel |
jjg@1386 | 5 | * @summary Cyclic annotation not allowed |
jjg@1386 | 6 | * @compile/fail/ref=CyclicAnnotation.out -XDrawDiagnostics CyclicAnnotation.java |
jjg@1386 | 7 | */ |
jjg@1386 | 8 | |
jjg@1386 | 9 | import java.lang.annotation.ContainedBy; |
jjg@1386 | 10 | import java.lang.annotation.ContainerFor; |
jjg@1386 | 11 | |
jjg@1386 | 12 | @ContainedBy(Foo.class) |
jjg@1386 | 13 | @ContainerFor(Baz.class) |
jjg@1386 | 14 | @interface Baz { |
jjg@1386 | 15 | Foo[] value() default {}; |
jjg@1386 | 16 | } |
jjg@1386 | 17 | |
jjg@1386 | 18 | @ContainedBy(Baz.class) |
jjg@1386 | 19 | @ContainerFor(Foo.class) |
jjg@1386 | 20 | @interface Foo{ |
jjg@1386 | 21 | Baz[] value() default {}; |
jjg@1386 | 22 | } |
jjg@1386 | 23 | |
jjg@1386 | 24 | @Foo(value = {@Baz,@Baz}) |
jjg@1386 | 25 | @Baz(value = {@Foo,@Foo}) |
jjg@1386 | 26 | public class CyclicAnnotation {} |