Withdrawn: 8254023: A module declaration is not allowed to be a target of an annotation that lacks an @Target meta-annotation

Guoxiong Li github.com+13688759+lgxbslgx at openjdk.java.net
Thu Dec 17 05:08:55 UTC 2020


On Tue, 13 Oct 2020 04:02:36 GMT, Guoxiong Li <github.com+13688759+lgxbslgx at openjdk.org> wrote:

> Hi all,
> 
> The Java Language Specifications(JLS), from 8 to 13 included, state it as below:
> 
>> If an annotation of type java.lang.annotation.Target is not present on the
> declaration of an annotation type T , then T is applicable in all declaration contexts
> except type parameter declarations, and in no type contexts.
> These contexts are the syntactic locations where annotations were allowed in Java SE 7.
> 
> The JLS 14 and 15 state it as below:
> 
>>If an annotation of type java.lang.annotation.Target is not present on the
> declaration of an annotation type T , then T is applicable in all nine declaration
> contexts and in all 16 type contexts.
> 
> This patch adds `names.MODULE, names.TYPE_PARAMETER, names.TYPE_USE` to `com.sun.tools.javac.comp.Check.dfltTargetMeta` to fix this issue.
> Thank you for taking the time to review.
> 
> Best Regards.

This pull request has been closed without being integrated.

-------------

PR: https://git.openjdk.java.net/jdk/pull/622


More information about the compiler-dev mailing list