File: PlumeFailMin.java

package info (click to toggle)
checker-framework-java 3.2.0%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 22,840 kB
  • sloc: java: 145,910; xml: 839; sh: 518; makefile: 401; perl: 26
file content (23 lines) | stat: -rw-r--r-- 657 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Test case for eisop Issue 22:
// https://github.com/eisop/checker-framework/issues/22

import org.checkerframework.checker.index.qual.IndexOrHigh;
import org.checkerframework.common.value.qual.MinLen;

abstract class PlumeFailMin {
    void ok() {
        String @MinLen(1) [] args = getArrayOk();
        @IndexOrHigh("args") int x = 1;
    }

    abstract String @MinLen(1) [] getArrayOk();

    void fail() {
        // Workaround by casting.
        @SuppressWarnings({"index", "value"})
        String @MinLen(1) [] args = (String @MinLen(1) []) getArrayFail();
        @IndexOrHigh("args") int x = 1;
    }

    abstract String[] getArrayFail();
}