| import org.checkerframework.framework.qual.NoDefaultQualifierForUse; |
| import org.checkerframework.framework.testchecker.typedecldefault.quals.*; |
| |
| // @TypeDeclDefaultBottom is the default qualifier in hierarchy. |
| // @TypeDeclDefaultTop is the default for type declarations. |
| @NoDefaultQualifierForUse(TypeDeclDefaultTop.class) |
| public @TypeDeclDefaultTop class TestDefaultForTypeDecl { |
| void test(@TypeDeclDefaultTop TestDefaultForTypeDecl arg) {} |
| |
| void testUnannotated(TestDefaultForTypeDecl arg) {} |
| |
| void testOtherQual( |
| @TypeDeclDefaultBottom TestDefaultForTypeDecl arg, TestDefaultForTypeDecl arg1) { |
| arg = arg1; |
| } |
| |
| void method() { |
| Object @TypeDeclDefaultBottom [] object = new Object[] {null}; |
| this.<Object>genericMethod(); |
| new TestDefaultForTypeDecl() {}; |
| } |
| |
| <@TypeDeclDefaultBottom T extends @TypeDeclDefaultBottom Object> void genericMethod() {} |
| } |