On Sunday 19 August 2007 05:55:56 Badai Aqrandista wrote:

> I'm trying to modify 'Test::Builder' and 'Test::Builder::*' to keys
> but I'm stuck with the following problem:
>
> $ ./parrot runtime/parrot/library/Test/Builder.pir
> error:imcc:The opcode 'does_i_p_pc' (does<3>) was not found. Check the
> type and number of the arguments
>         in file 'runtime/parrot/library/Test/Builder.pir' line 334
>
> The change that apparently created this problem is this:
>
> === runtime/parrot/library/Test/Builder.pir
> ==================================================================
> --- runtime/parrot/library/Test/Builder.pir     (revision 620)
> +++ runtime/parrot/library/Test/Builder.pir     (local)
> @@ -330,7 +330,7 @@
>
>    CHECK_REPLAN:
>      .local int valid_tp
> -    valid_tp = does testplan, 'Test::Builder::TestPlan'
> +    valid_tp = does testplan, [ 'Test'; 'Builder'; 'TestPlan' ]
>
>      unless valid_tp goto CHECK_TESTNUM
>
> And apparently 'does' doesn't accept keys as $3.
>
> Can anyone suggest what I should do?

Ahh, it looks like we need a new does opcode variant.  I'll poke at this in a 
bit.

(If you want to see what it might look like, open up src/ops/object.ops and 
look for does()).

-- c

Reply via email to