On Tue, Jul 05, 2005 at 02:24:41PM -0400, George Schlossnagle wrote: > Do you see any other common situations that implementing this might > break? Specifically I'm worried about > having some data come in that looks very much like this, but who > really needs to be maintained as an opaque PVMG inside PHP.
I can't see any (additional) risks. Specifically, if you have a scalar that happens to be a PVMG, but has magic and stash of 0, it's really not going to behave any differently from a PVNV (or smaller). It just happens to have some unneeded storage allocated. Scalar behaviour is driven by the SvFLAGS and the contents of the pointer fields. The scalar's type is really only important when it comes to working out whether you can read/write to one of the pointer fields. (ie that you aren't looking at/scribbling over unallocated memory) Nicholas Clark