Hi Martin, On 7/23/2020 5:24 PM, Martin Buchholz wrote:
So these are all abstract classes where the constructor can only be called via super() ?
Yep.
In which case one would expect the constructors to be protected, not public. But I'm probably missing some reason why "protected" would not be 100% compatible.
It would be compatible (AFAICT), but the current (implicit) default constructors are public, since the classes are public, so I made the new explicit constructors public.
On the assumption the upstream JDK 166-alpha repo would want to take in this change for as many releases as possible, the public constructors could be used for earlier release trains too.
Historically, we've preferred to put changes in via CVS, but in 2020, we might prefer you make the change directly in openjdk. Doug?
I'm happy to make the changes in OpenJDK for JDK 16. Thanks, -Joe