Evolving the wrapper classes

Brian Goetz brian.goetz at oracle.com
Wed Jun 17 22:13:28 UTC 2020

This is pretty much what I was expecting.  A few comments:

> Step 1: Warnings

A dynamic warning, initially only activated by opt-in, when someone 
attempts to synchronize on an instance of a wrapper class.  There's a 
changeset in review now for 16.

> - Where necessary (depending on the operations being performed), the compiler generates conversions between 'I' and 'java/lang/Integer$val'. 'I' is preferred wherever possible.

We have to use QInteger$val whenever we use int as a type parameter, the 
rest of the time, we can use I.

> Library changes:
> - The constructors are removed, replaced with private constructors.

This can happen earlier if we want; we can just remove them (after 
suitable DFR.)  There are factories.

More information about the valhalla-spec-observers mailing list