RFR [9] 8071472: Add field access to support setting final fields in readObject

Alan Bateman Alan.Bateman at oracle.com
Tue Mar 17 13:42:23 UTC 2015


On 17/03/2015 12:21, Peter Levart wrote:
>
> Hi Alan,
>
> I agree that not calling defaultReadObject() from readObject() and 
> having a final field is potentially a bug. But need not be in case 
> some other means of setting final fields was used (Unsafe or 
> reflection). Some readObject() implementations in base module that 
> Chris changed to use new API fall into this category. We can't track 
> those usages, so to keep backwards compatibility, this checking has to 
> be opt-in. Is there a more elegant way to opt-in? A 
> @CheckFinalsAssignment annotation on the readObject() method?
I'm not sure that an annotation is right here. Instead then it might 
work as a method on FieldSetter to enable strict checking.

-Alan



More information about the core-libs-dev mailing list