> On Aug 22, 2023, at 1:02 PM, John Rose <[email protected]> wrote: > >> - putfield is a verifier error on non-identity class types, it only works on >> uninitializedThis > Alternatively, we don’t need to touch the verifier if we use a dynamic > larval-bit check on putfield.
Okay, but FWIW, we need verification to restrict putfield anyway: outside of <init>, putfield on a value class field is a verification error. It would probably be more trouble than it's worth to make the verifier *allow* putfield on a value class type (distinct from an 'uninitializedThis' type) in an <init> method—we'd have a special-purpose verification rule to allow it, and then a matching runtime rule to reject it.
