| /** |
| * @test /nodynamiccopyright/ |
| * @bug 8029376 |
| * @summary Verify reasonable errors for erroneous annotations, and incorrectly used types |
| * @compile/fail/ref=ErroneousAnnotations.out -XDrawDiagnostics ErroneousAnnotations.java |
| */ |
| class ErroneousAnnotations { |
| @Undefined //no "is not an annotation type error" |
| private int f1; |
| @String //produce "is not an annotation type error" |
| private int f2; |
| @Annot(@Undefined) |
| private int f3; |
| @Annot(@String) |
| private int f4; |
| @Primitive(@Undefined) |
| private int f5; |
| @Primitive(@String) |
| private int f6; |
| @PrimitiveWrap(@PrimitiveImpl) |
| private int f7; |
| |
| @interface Annot { |
| Undefined value(); |
| } |
| |
| @interface PrimitiveWrap { |
| Primitive value(); |
| } |
| |
| @interface Primitive { |
| int value(); |
| } |
| |
| interface PrimitiveImpl extends Primitive { |
| } |
| } |
| |