blob: 558b118e5f544302c1eccace42c0c788a79e475d [file] [log] [blame]
/* @test /nodynamiccopyright/
* @bug 8182747
* @summary javac crashes on bad annotation value
* @compile/fail/ref=BadAnnotationRegressionTest.out -XDrawDiagnostics BadAnnotationRegressionTest.java
*/
class BadAnnotationRegressionTest {
@interface ClassAnno {
Class<?> value();
}
@interface ArrayAnno {
int[] value();
}
@interface PrimitiveAnno {
int value();
}
@interface StringAnno {
String value();
}
enum E {
A,
B,
}
@interface EnumAnno {
E value();
}
static final Class<?> c = Object.class;
static final int i = 0;
static final int[] arr = new int[] { 1, 2, 3 };
static final E a = E.A;
static final String s = "";
@ClassAnno(c) // error
@PrimitiveAnno(i) // ok
@ArrayAnno(arr) // error
@EnumAnno(a) // error
@StringAnno(s) //ok
void testAnno() {}
}