> 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.
Chen Liang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 12 additional commits since the last revision: - Merge branch 'master' of https://github.com/openjdk/jdk into feature/javac-bsm-validate - Joe review, ap warnings - Merge branch 'master' of https://github.com/openjdk/jdk into feature/javac-bsm-validate - 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 - ... and 2 more: https://git.openjdk.org/jdk/compare/ffa726fa...8554cb81 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/30125/files - new: https://git.openjdk.org/jdk/pull/30125/files/e02d03f2..8554cb81 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=30125&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=30125&range=00-01 Stats: 9498 lines in 215 files changed: 5335 ins; 1975 del; 2188 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
