blob: 8cd7d6aa15515297fe1a16f4f237515808100f56 [file] [log] [blame]
/*
* @test /nodynamiccopyright/
* @bug 8006733 8006775
* @ignore
* @summary A static outer class cannot be annotated.
* @author Werner Dietl
* @compile/fail/ref=CantAnnotateStaticClass.out -XDrawDiagnostics CantAnnotateStaticClass.java
*/
import java.util.List;
import java.lang.annotation.*;
class CantAnnotateStaticClass {
@Target(ElementType.TYPE_USE)
@interface A {}
static class Outer {
class Inner {}
}
// 8 errors:
@A Outer.Inner f1;
@A Outer.Inner f1r() { return null; }
void f1p(@A Outer.Inner p) { }
void f1c(Object o) {
Object l = (@A Outer.Inner) o;
}
List<@A Outer.Inner> f2;
List<@A Outer.Inner> f2r() { return null; }
void f2p(List<@A Outer.Inner> p) { }
void f2c(Object o) {
Object l = (List<@A Outer.Inner>) o;
}
// OK:
@A Outer g1;
List<@A Outer> g2;
Outer. @A Inner g3;
List<Outer. @A Inner> g4;
}