| import org.checkerframework.checker.testchecker.wholeprograminference.qual.Sibling2; |
| import org.checkerframework.checker.testchecker.wholeprograminference.qual.Top; |
| import org.checkerframework.checker.testchecker.wholeprograminference.qual.WholeProgramInferenceBottom; |
| |
| public class UsesAnonymous { |
| void method() { |
| Anonymous a = |
| new Anonymous() { |
| int innerField; |
| |
| public void method2() { |
| Anonymous.field1 = getSibling2(); |
| Anonymous.field2 = getSibling2(); |
| innerField = getSibling2(); |
| } |
| |
| void innerFieldTest() { |
| // :: warning: (argument) |
| expectsSibling2(innerField); |
| } |
| |
| @WholeProgramInferenceBottom int getBottom() { |
| return (@WholeProgramInferenceBottom int) 0; |
| } |
| |
| @Top int getTop() { |
| return (@Top int) 0; |
| } |
| |
| @Sibling2 int getSibling2() { |
| return (@Sibling2 int) 0; |
| } |
| |
| void expectsSibling2(@Sibling2 int t) {} |
| }; |
| } |
| } |