On Tue, 27 Aug 2002, Jason Gloudon wrote:
> Dan Sugalski wrote:
> > This includes all forms of assignment, not just the ASSIGN op kind.
> > When we do an ADD Px, Py, Pz, we're calling Px's set_pmc vtable entry
> > with a PMC that represents the addition of Y and Z. Whether X changes
> > its type is entirely up to it, as that's what it's supposed to
> > determine.
>
> So this means that ADD will have to create a temporary PMC to hold the
> result which it then passes to set_pmc ?

I would hope that in the case of ADD, this can (usually) be a temporary
integer, float, or bignum, which will then be passed to the destination's
set_integer_native.  It seems like we may also want to be able to do
pointer assignment as we do now if the destination is undef (i.e. "put the
result in that register in its `natural' PMC type").

> What does set_pmc then do, in the case of a normal assignment with no
> magic or fixed type in order to perform the assignment ?

I'll vote for "morph" here.

/s

Reply via email to