| import java.lang.annotation.ElementType; |
| import java.lang.annotation.Target; |
| import org.checkerframework.framework.qual.DefaultQualifierInHierarchy; |
| import org.checkerframework.framework.qual.SubtypeOf; |
| import org.checkerframework.framework.qual.Unused; |
| |
| public final class UnusedOnClass { |
| public static void read_serialized_pptmap2(@MyNonPrototype MyInvariant2 inv) { |
| inv.ppt.toString(); |
| } |
| } |
| |
| @MyPrototype |
| abstract class MyInvariant2 { |
| @Unused(when = MyPrototype.class) |
| public String ppt = "hello"; |
| } |
| |
| @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER}) |
| @SubtypeOf({}) |
| @interface MyPrototype {} |
| |
| @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER}) |
| @SubtypeOf(MyPrototype.class) |
| @DefaultQualifierInHierarchy |
| @interface MyNonPrototype {} |