On Mon Apr 21 23:55:10 2008, [EMAIL PROTECTED] wrote: 
> chunk should never be 0x11.  Does this patch fix things for you?

Lets the build complete, but a similar crash (similar stack frames, different 
addresses) occurs 
when running t/op/sprintf.t when subtest 174 is reached.

> If not, you might set a watchpoint on cc->dynamic_state to see when it
> gets
> set to 0x11, as that'll show where we have a pointer go awry.  (I fear
> that
> it may be one of the PMC_int_val( xxx )++ or -- bits in stack_push or
> stack_pop.)

I'll see if I can find when it gets set to 0x3.

Stack trace with patch:
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x0000000b
0x0069092c in pobject_lives (interp=0x1709ce0, obj=0x3) at src/gc/dod.c:190
190         if (PObj_is_live_or_free_TESTALL(obj))
(gdb) bt
#0  0x0069092c in pobject_lives (interp=0x1709ce0, obj=0x3) at src/gc/dod.c:190
#1  0x006e09dc in mark_stack (interp=0x1709ce0, chunk=0x3) at src/stacks.c:66
#2  0x00850380 in Parrot_Continuation_mark (interp=0x1709ce0, pmc=0x21131e0) at 
continuation.pmc:89
#3  0x00690fac in Parrot_dod_trace_children (interp=0x1709ce0, 
how_many=4294966673) 
at src/gc/dod.c:440
#4  0x00690d4c in trace_active_PMCs (interp=0x1709ce0, trace_stack=1) at 
src/gc/dod.c:373
#5  0x00691f90 in Parrot_dod_ms_run (interp=0x1709ce0, flags=1) at 
src/gc/dod.c:1130
#6  0x006920c0 in Parrot_do_dod_run (interp=0x1709ce0, flags=1) at 
src/gc/dod.c:1179
#7  0x00694b78 in more_traceable_objects (interp=0x1709ce0, pool=0x170a050) at 
src/gc/smallobject.c:144
#8  0x00694c80 in gc_ms_get_free_object (interp=0x1709ce0, pool=0x170a050) at 
src/gc/smallobject.c:195
#9  0x00698e40 in new_pmc_header (interp=0x1709ce0, flags=1024) at 
src/headers.c:309
#10 0x006db5f4 in get_new_pmc_header (interp=0x1709ce0, base_type=21, 
flags=1024) at 
src/pmc.c:244
#11 0x006db160 in pmc_new (interp=0x1709ce0, base_type=21) at src/pmc.c:69
#12 0x006e6938 in new_ret_continuation_pmc (interp=0x1709ce0, 
address=0x1858b20) at 
src/sub.c:242
#13 0x0084a39c in Parrot_Sub_invoke (interp=0x1709ce0, pmc=0x209f500, 
next=0x1858b20) at sub.pmc:239
#14 0x0061adcc in Parrot_callmethodcc_p_sc (cur_opcode=0x1858b14, 
interp=0x1709ce0) 
at object.ops:78
#15 0x006dc684 in runops_slow_core (interp=0x1709ce0, pc=0x1858b14) at 
src/runops_cores.c:219
#16 0x006a33d4 in runops_int (interp=0x1709ce0, offset=353) at 
src/interpreter.c:916
#17 0x006a408c in runops (interp=0x1709ce0, offs=0) at src/inter_run.c:104
#18 0x006a43ac in runops_args (interp=0x1709ce0, sub=0x209f860, obj=0x1838e80, 
meth_unused=0x0, sig=0x9721ac "vP", ap=0xbffff444 "\002\t???\0259𠵛H\001?~") at 
src/inter_run.c:230
#19 0x006a4550 in Parrot_runops_fromc_args (interp=0x1709ce0, sub=0x209f860, 
sig=0x9721ac "vP") at src/inter_run.c:299
#20 0x00683d54 in Parrot_runcode (interp=0x1709ce0, argc=1, argv=0xbffff5fc) at 
src/embed.c:941
#21 0x00947668 in imcc_run_pbc (interp=0x1709ce0, obj_file=0, output_file=0x0, 
argc=1, 
argv=0xbffff5fc) at compilers/imcc/main.c:781
#22 0x009480fc in imcc_run (interp=0x1709ce0, sourcefile=0xbffff6e3 
"t/op/sprintf.t", 
argc=1, argv=0xbffff5fc) at compilers/imcc/main.c:1069
#23 0x000020e8 in main (argc=1, argv=0xbffff5fc) at src/main.c:61





Reply via email to