| import org.checkerframework.checker.i18n.qual.*; |
| |
| // @C <: @B <: @A |
| |
| // Testing Rule 1 (constructor declaration type <: class type) |
| @UnknownLocalizableKey class Issue2163FinalAA { |
| @UnknownLocalizableKey Issue2163FinalAA() {} |
| } |
| |
| @UnknownLocalizableKey class Issue2163FinalAB { |
| // :: error: (super.invocation) :: warning: (inconsistent.constructor.type) |
| @LocalizableKey Issue2163FinalAB() {} |
| } |
| |
| @UnknownLocalizableKey class Issue2163FinalAC { |
| // :: error: (super.invocation) :: warning: (inconsistent.constructor.type) |
| @LocalizableKeyBottom Issue2163FinalAC() {} |
| } |
| |
| @LocalizableKey class Issue2163FinalBA { |
| // :: error: (annotations.on.use) |
| @UnknownLocalizableKey Issue2163FinalBA() {} |
| } |
| |
| @LocalizableKey class Issue2163FinalBB { |
| // :: error: (super.invocation) :: warning: (inconsistent.constructor.type) |
| @LocalizableKey Issue2163FinalBB() {} |
| } |
| |
| @LocalizableKey class Issue2163FinalBC { |
| // :: error: (super.invocation) :: warning: (inconsistent.constructor.type) |
| @LocalizableKeyBottom Issue2163FinalBC() {} |
| } |
| |
| @LocalizableKeyBottom class Issue2163FinalCA { |
| // :: error: (annotations.on.use) |
| @UnknownLocalizableKey Issue2163FinalCA() {} |
| } |
| |
| @LocalizableKeyBottom class Issue2163FinalCB { |
| // :: error: (annotations.on.use) :: warning: (inconsistent.constructor.type) :: |
| // error: (super.invocation) |
| @LocalizableKey Issue2163FinalCB() {} |
| } |
| |
| @LocalizableKeyBottom class Issue2163FinalCC { |
| // :: error: (super.invocation) :: warning: (inconsistent.constructor.type) |
| @LocalizableKeyBottom Issue2163FinalCC() {} |
| } |
| |
| // Testing Rule 2 (Issue type cast warning if constuctor declaration type <: invocation type) |
| @SuppressWarnings("anno.on.irrelevant") |
| class Issue2163FinalAAClient { |
| void test() { |
| new @UnknownLocalizableKey Issue2163FinalAA(); |
| // :: warning: (cast.unsafe.constructor.invocation) |
| new @LocalizableKey Issue2163FinalAA(); |
| // :: warning: (cast.unsafe.constructor.invocation) |
| new @LocalizableKeyBottom Issue2163FinalAA(); |
| } |
| } |
| |
| // Testing Default |
| @SuppressWarnings("anno.on.irrelevant") |
| class Issue2163FinalBCClient { |
| @LocalizableKeyBottom Issue2163FinalBC obj = new Issue2163FinalBC(); |
| } |