blob: fde72d1533e299121bd7bf8cb0404486ad26456e [file] [log] [blame]
package index;
import org.checkerframework.checker.index.qual.GTENegativeOne;
import org.checkerframework.checker.index.qual.IndexFor;
import org.checkerframework.checker.index.qual.SameLenBottom;
import org.checkerframework.checker.index.qual.UpperBoundBottom;
import org.checkerframework.common.value.qual.BottomVal;
/** This class tests that errors are issued in order of postion. */
public class ErrorOrders {
void test2(int i, int[] a) {
a[i] = 2;
}
int test4(
@GTENegativeOne @UpperBoundBottom int p1,
@UpperBoundBottom @GTENegativeOne int p2,
int @BottomVal [] p3,
int @SameLenBottom [] p4,
@BottomVal int p5) {
@IndexFor("p2") int z = 0;
@IndexFor("This isn't an expression") int x = z;
return x;
}
void useTest4(int p1, int p2, int[] p3, int[] p4, int p5) {
test4(p1, test4(p1, p2, p3, p4, p5), p3, p4, p5);
}
class InnerClass {
@IndexFor("This isn't an expression") int x = 0;
void test2(int i, int[] a) {
a[i] = 2;
}
}
}
class InSameCompilationUnit {
@IndexFor("This isn't an expression") int x = 0;
void test2(int i, int[] a) {
a[i] = 2;
}
int test4(
@GTENegativeOne @UpperBoundBottom int p1,
@UpperBoundBottom @GTENegativeOne int p2,
int @BottomVal [] p3,
int @SameLenBottom [] p4,
@BottomVal int p5) {
@IndexFor("p2") int z = 0;
@IndexFor("This isn't an expression") int x = z;
return x;
}
void useTest4(int p1, int p2, int[] p3, int[] p4, int p5) {
test4(p1, test4(p1, p2, p3, p4, p5), p3, p4, p5);
}
}