vwithfield and ValueType.findWither

Paul Sandoz paul.sandoz at oracle.com
Wed Jun 14 19:29:52 UTC 2017


There appears enough VM support to try out the vwithfield in MVT and simplify the current implementation.

However, i am getting an IllegalAccessException from the VM, even though the class produced by MVT is anonymously defined with the DVT class as the host class (could be the VCC too?):

> java.lang.IllegalAccessError: Update to non-static final field Point$Value.x attempted from a different class (Point_wither$x/467000451) than the field's declaring class

Should the VM be delegating access control checking to the host class in this case?

Separately, the ValueType.findWither code needs to update it’s own access control checks such that only a lookup with the correct permissions (from the class or via privateLookupIn) can produce a wither MH. Again, should permission be granted if the lookup class is VCC in addition to DVT?


More information about the valhalla-dev mailing list