Hi!

I have found a problem with with mmd_dispatch_v_pnp.
The function calls (for an Integer-PMC) Parrot_Integer_multiply_int, which 
expects an INTVAL, but a FLOATVAL is passed to it.

jens

-------

Breakpoint 1, mmd_dispatch_v_pnp (interpreter=0x8245048, left=0x8401328, 
right=1, dest=0x8401328, function=7)        <-- right=1 is a FLOATVAL
    at mmd.c:265

...

274             (*real_function)(interpreter, left, right, dest);  <-- correct
(gdb) print left
$25 = (PMC *) 0x8401328
(gdb) print right
$26 = 1
(gdb) print dest
$27 = (PMC *) 0x8401328
(gdb) s
Parrot_Integer_multiply_int (interpreter=0x8245048, pmc=0x8401328, b=0, 
dest=0x3ff00000) at integer.c:511             <-- wrong signature!
511         INTVAL a = PMC_int_val(pmc);
(gdb) print pmc->vtable->base_type
$29 = 31                                    [[class "Integer"]]
(gdb)

Reply via email to