import org.checkerframework.checker.nullness.qual.*;

/* Use @MonotonicNonNull as component type to ensure that null can never be
 * assigned into a component. Then, after a single iteration over the array,
 * we can be sure that all elements are non-null.
 * TODO: support for (i=0; i < a.length.... and change component type to non-null.
 */
public class ArrayLazyNN {
  void test1() {
    @MonotonicNonNull Object[] o1 = new @MonotonicNonNull Object[10];
    o1[0] = new Object();
    // :: error: (assignment)
    o1[0] = null;
    // :: error: (assignment)
    @NonNull Object[] o2 = o1;
    @SuppressWarnings("nullness")
    @NonNull Object[] o3 = o1;
  }
}
