Simon Glover <[EMAIL PROTECTED]> wrote: > 1. What is <init_pmc_properties> supposed to do?
Probably setup a new PMC *and* attach the passed properties. > 2. What, precisely, do <invoke> and <invoke_pmc> do? C<invoke> does kind of a subroutine call on the PMC. The functionality depends on the class implementing the method. C<invoke_pmc> is AFAIK unused and not needed. > void* invoke(void* next) > void* invoke_pmc(PMC* sub, void* next) > (taken directly from vtable.tbl), what is <next>, and what do they > return? C<next> is normally a pointer into the byte code (the address of the instruction after the C<invoke> opcode. The return value of C<invoke> is the branch address, where operation flow continues (normally the subroutine's address). > 3. <mark> is described as taking a PMC parameter that represents the > current end of the free list, and returning the new end of the free > list (after the PMC with the custom mark routine has added itself and > its contents to the list if appropriate). We don't actually do this, > however; is this a deliberate change? Unifying buffers and PMCs changed that. > 4. Since we've tossed the keyed variants of push, pop, shift, unshift, > the arithmetic ops, the bitwise ops, the logical ops, increment, > decrement, substr and repeat, is it OK to get rid of the corresponding > entries in PDD02? Fine for me. > Simon leo