import typeUse.*;
public class IncorrectPlacement extends @Nullable Object
implements @Nullable Cloneable {
interface X {
void test() throws @Nullable Exception;
void test2() throws @NotNull Exception;
}
@Nullable IncorrectPlacement() {}
void test(@Nullable IncorrectPlacement this) {
@Nullable IncorrectPlacement.Inner a1;
IncorrectPlacement.@Nullable Inner a2;
}
void fqn() {
@Nullable java.lang.String[] strs;
}
@NotNull int[] data;
void testStaticNested() {
// No "Outer type is inherently non-null" warning. Reported error provides the same "Move annotation" fix.
@Nullable IncorrectPlacement.StaticNested a1;
IncorrectPlacement.@Nullable StaticNested a2;
}
class Inner {}
static class StaticNested {}
}