| import org.checkerframework.checker.index.qual.*; |
| |
| public class ConstantArrays { |
| void basic_test() { |
| int[] b = new int[4]; |
| @LTLengthOf("b") int[] a = {0, 1, 2, 3}; |
| |
| // :: error: (array.initializer)::error: (assignment) |
| @LTLengthOf("b") int[] a1 = {0, 1, 2, 4}; |
| |
| @LTEqLengthOf("b") int[] c = {-1, 4, 3, 1}; |
| |
| // :: error: (array.initializer)::error: (assignment) |
| @LTEqLengthOf("b") int[] c2 = {-1, 4, 5, 1}; |
| } |
| |
| void offset_test() { |
| int[] b = new int[4]; |
| int[] b2 = new int[10]; |
| @LTLengthOf( |
| value = {"b", "b2"}, |
| offset = {"-2", "5"}) |
| int[] a = {2, 3, 0}; |
| |
| @LTLengthOf( |
| value = {"b", "b2"}, |
| offset = {"-2", "5"}) |
| // :: error: (array.initializer)::error: (assignment) |
| int[] a2 = {2, 3, 5}; |
| |
| // Non-constant offsets don't work correctly. See kelloggm#120. |
| } |
| } |