Running the tcl "examples/bench.tcl" script, I get the following backtrace:
Program received signal EXC_BAD_ACCESS, Could not access memory. 0x0021cb38 in Parrot_Sub_invoke (interpreter=0xd001a0, pmc=0xed2b60, next=0xf20284) at classes/sub.c:239 239 if (interpreter->code->cur_cs != sub->seg) { (gdb) bt #0 0x0021cb38 in Parrot_Sub_invoke (interpreter=0xd001a0, pmc=0xed2b60, next=0xf20284) at classes/sub.c:239 #1 0x00067d74 in Parrot_invokecc (cur_opcode=0xf20280, interpreter=0xd001a0) at ops/core.ops:440 #2 0x001d617c in runops_slow_core (interpreter=0xd001a0, pc=0xf20280) at src/runops_cores.c:147 #3 0x00048e90 in runops_int (interpreter=0xd001a0, offset=0) at src/interpreter.c:742 #4 0x00042aa8 in runops (interpreter=0xd001a0, offs=0) at src/inter_run.c:81 #5 0x00015750 in Parrot_runcode (interpreter=0xd001a0, argc=2, argv=0xbffffce4) at src/embed.c:768 #6 0x00015508 in Parrot_runcode (interpreter=0xd001a0, argc=2, argv=0xbffffce4) at src/embed.c:700 #7 0x00003f18 in main (argc=2, argv=0xbffffce4) at imcc/main.c:603
Any chance this is a parrot issue and not a tcl issue?
I'm also seeing the following on a slightly different tcl script:
Program received signal EXC_BAD_ACCESS, Could not access memory. 0x000625a8 in Parrot_find_global_p_sc_sc (cur_opcode=0xd2235c, interpreter=0xd001a0) at ops/var.ops:305 305 if (!$2) (gdb) bt #0 0x000625a8 in Parrot_find_global_p_sc_sc (cur_opcode=0xd2235c, interpreter=0xd001a0) at ops/var.ops:305 #1 0x001d617c in runops_slow_core (interpreter=0xd001a0, pc=0xd2235c) at src/runops_cores.c:147 #2 0x00048e90 in runops_int (interpreter=0xd001a0, offset=0) at src/interpreter.c:742 #3 0x00042aa8 in runops (interpreter=0xd001a0, offs=0) at src/inter_run.c:81 #4 0x00015750 in Parrot_runcode (interpreter=0xd001a0, argc=2, argv=0xbffffce4) at src/embed.c:768 #5 0x00015508 in Parrot_runcode (interpreter=0xd001a0, argc=2, argv=0xbffffce4) at src/embed.c:700 #6 0x00003f18 in main (argc=2, argv=0xbffffce4) at imcc/main.c:603