In the Java Platform, most bootstrap method declarations are declared in Java 
source code. Each of these bootstrap method need to refer to the bootstrap 
method mechanism, which makes documentation repetitive, and not straightforward 
when seen from source code. This demand came out of recent PR reviews like 
#30067.

We can introduce documented annotations so the bootstrap method role becomes 
straightforward. The Java compilers can also emit warnings for these 
annotations to make sure the annotated declarations are not definitely illegal.

In this RFE, javac will provide basic warnings under the new "bsm" lint 
category to validate these annotations for source levels 27 and above. The lint 
category will be on by default, and won't affect `-Xlint:all` usages for source 
levels 26 and below.

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

Commit messages:
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
feature/javac-bsm-validate
 - Years
 - Updates
 - Copyright
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
feature/javac-bsm-validate
 - More fixes
 - Fixed error hiding
 - Wip suggestions
 - Validate bsm in javac

Changes: https://git.openjdk.org/jdk/pull/30125/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=30125&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8379446
  Stats: 539 lines in 20 files changed: 518 ins; 12 del; 9 mod
  Patch: https://git.openjdk.org/jdk/pull/30125.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/30125/head:pull/30125

PR: https://git.openjdk.org/jdk/pull/30125

Reply via email to