RFR: 8354556: Expand value-based class warnings to java.lang.ref API [v13]

Jan Lahoda jlahoda at openjdk.org
Wed May 14 18:04:59 UTC 2025


On Tue, 13 May 2025 19:36:11 GMT, Vicente Romero <vromero at openjdk.org> wrote:

>> This PR is defining a new internal annotation, `@jdk.internal.RequiresIdentity`, with target types PARAMETER and TYPE_PARAMETER. The @RequiresIdentity annotation expresses the expectation that an argument to a given method or constructor parameter will be an object with a unique identity, not an instance of a value-based class; or that the type argument to a given type parameter will not be a value-based class type.
>> 
>> For more details please refer to the complete description in the corresponding JIRA entry [1]
>> 
>> TIA
>> 
>> [1] https://bugs.openjdk.org/browse/JDK-8354556
>
> Vicente Romero has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 34 commits:
> 
>  - Merge branch 'master' into JDK-8354556
>  - Update src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java
>    
>    Co-authored-by: Chen Liang <liach at openjdk.org>
>  - additional changes from Archie
>  - removing dead code
>  - integrating code from Archie
>  - fixing bugs, removing dead code
>  - additional documentation changes and bug fixes
>  - documentation and adding alias to lint categories
>  - Merge branch 'master' into JDK-8354556
>  - addressing review comment
>  - ... and 24 more: https://git.openjdk.org/jdk/compare/e7ce661a...22acaf29

src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java line 5673:

> 5671:     void checkRequiresIdentity(JCTree tree, Lint lint) {
> 5672:         switch (tree) {
> 5673:             case JCClassDecl classDecl : {

Nit - unless fall-through is needed (it does not seem to be, on the first sight), I would suggest to use `->` instead of `:`, esp. given the cases use blocks anyway.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24746#discussion_r2089472496


More information about the core-libs-dev mailing list