On Jul 7, 2005, at 9:34 AM, Nicholas Clark wrote:

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)

Super.  Thanks very much for the help.

George


Reply via email to