1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
/*
* @test /nodynamiccopyright/
* @bug 5044125
* @summary javac allows cyclic annotation interfaces with arrays
* @author gafter
*
* @compile/fail/ref=Cycle3.out -XDrawDiagnostics Cycle3.java
*/
package cycle3;
import java.lang.annotation.Retention;
import static java.lang.annotation.RetentionPolicy.*;
@Retention(RUNTIME)
@interface A {
A[] values() default { @A() };
}
@A()
class Main {
public static void main(String[] args) {
A a = Main.class.getAnnotation(A.class);
System.out.println(a);
}
}
|