/*
* @test /nodynamiccopyright/
* @bug 8028428
* @summary Test that only 'public' and 'abstract' elements compile
* @compile/fail/ref=AnnotationTypeElementModifiers.out -XDrawDiagnostics AnnotationTypeElementModifiers.java
*/
public @interface AnnotationTypeElementModifiers {
// First 4 should work
public int A();
public int AA() default 1;
abstract int B();
abstract int BB() default 1;
// These shouldn't work
private int C();
private int CC() default 1;
protected int D();
protected int DD() default 1;
static int E();
static int EE() default 1;
final int F();
final int FF() default 1;
synchronized int H();
synchronized int HH() default 1;
volatile int I();
volatile int II() default 1;
transient int J();
transient int JJ() default 1;
native int K();
native int KK() default 1;
strictfp float L();
strictfp float LL() default 0.1f;
default int M();
default int MM() default 1;
}