@Documented @Retention(value=RUNTIME) @Target(value={TYPE_USE,TYPE_PARAMETER}) @TargetLocations(value={EXPLICIT_LOWER_BOUND,EXPLICIT_UPPER_BOUND}) @SubtypeOf(value=NewObject.class) public @interface GuardedByBottom
If a variable x
has type @GuardedByBottom
, then the value referred to by
x
is null
(or dead code) and can never be dereferenced.