JDK-8203690 : Identify and annotate value based classes with @ValueBased
  • Type: Enhancement
  • Component: tools
  • Sub-Component: javac
  • Priority: P4
  • Status: Resolved
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2018-05-23
  • Updated: 2020-09-29
  • Resolved: 2020-09-29
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbd_majorResolved
Related Reports
Duplicate :  
Description
JDK-8203465 introduces a new annotation @ValueBased which is an informational marker annotation that can be used to tag
value based classes (see src/java.base/share/classes/java/lang/doc-files/ValueBased.html)

JDK-8203465 also implements a lint mode -Xlint:values using which Javac can be tasked to validate the conformance of the usage of so-annotated value based classes against the aforementioned spec and warn on violations.

The present ticket is raised for the task of actually identifying the value based classes in JDK and annotating them with the new annotation type.

I envision that this work will be done by the core-libs team with hand holding help from Langtools/Javac to address any problems encountered in the form of excess/spurious warnings or other such problems while building openJDK.

For now I'll have the ticket against langtools and move it to core-libs once JDK-8203465 gets pushed. 
Comments
This ticket is superseded by JDK-8252181
29-09-2020

The static checks via the lint mode and the dynamic checks in the VM are planned to be released together whenever value types support previews. This work will be taken up at that time.
21-11-2018