At 9:24 AM +0200 7/17/03, Leopold Toetsch wrote:
Simon Glover <[EMAIL PROTECTED]> wrote:

Dan,

  Firstly, when your doing the initialization for a new ParrotClass PMC,
  you create an Array to hold various other PMCs, but you don't size the
  array; this means that when you later try to put things in it in
  Parrot_new_class, it dies with:

Array index out of bounds!

I would use an SArray. Its simpler then an Array.

Point taken, and I've patched the patch from Simon.


Also the DOD flag is
bogus. An Array is not a buffer of PMCs. Its a ptr to a PMC in data:
PObj_is_PMC_ptr_FLAG.

Gah. Thinko on my part. (I really want that thing hanging off the data pointer to be a buffer not a PMC...)


> .... For instance, in findclass, you have:

   if (VTABLE_get_pmc_keyed(interpreter, interpreter->class_hash,
                            key_new_string(interpreter, $2))) {
     $1 = 1;
  } else {
     $1 = 0;
  }

this should be VTABLE_exists_keyed ...

Point. Updated.


And the second find_class op should be get_class.

D'oh! Fixed too. (This would all be why I don't commit much code)


And s/obj\.u\.int_val/cache.int_val/g

Ah, I see. Changed as well. -- Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to