> 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 13 additional commits since the last revision: - 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 - 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 - ... and 3 more: https://git.openjdk.org/jdk/compare/d9aae652...63cd1f1b ------------- Changes: - all: https://git.openjdk.org/jdk/pull/30125/files - new: https://git.openjdk.org/jdk/pull/30125/files/8554cb81..63cd1f1b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=30125&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=30125&range=01-02 Stats: 24197 lines in 674 files changed: 12903 ins; 5211 del; 6083 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
