@SuppressWarnings("lowerbound")
public class Dimension {
    void test(int expr) {
        int[] array = new int[expr];
        // :: error: (array.access.unsafe.high)
        array[expr] = 0;
        array[expr - 1] = 0;
    }

    String[] arrayField = new String[1];

    void test2(int expr) {
        arrayField = new String[expr];
        // :: error: (array.access.unsafe.high)
        this.arrayField[expr] = "";
        this.arrayField[expr - 1] = "";
    }
}
