It looks like the latest coroutine changes have uncovered a bug; now I can't get Parrot to build. Here's the relevant message:
gmake[1]: Entering directory `/home/chromatic/dev/parrot/compilers/pge' /usr/bin/perl5.8.8 -MExtUtils::Command -e rm_rf PGE.pbc ../../runtime/parrot/library/PGE.pbc No root path(s) specified at /usr/lib/perl5/5.8.8/ExtUtils/Command.pm line 105 /usr/bin/perl5.8.8 -e "" >PGE/builtins_gen.pir ../../parrot -o PGE.pbc --output-pbc PGE.pir ../../parrot pgc.pir --output=PGE/builtins_gen.pir PGE/builtins.pg gmake[1]: *** [PGE.pbc] Segmentation fault Going into compilers/pge and massaging the Makefile not to delete the appropriate files gets me further. Now TGE has similar problems, and I get back to: $ ../../parrot ../../compilers/pge/pgc.pir --output=TGE/Parser.pir TGE/Parser.pg Segmentation fault $ gdb ../../parrot (gdb) run ../../compilers/pge/pgc.pir --output=TGE/Parser.pir TGE/Parser.pg Starting program: /home/chromatic/bin/parrot ../../compilers/pge/pgc.pir --outpu t=TGE/Parser.pir TGE/Parser.pg [Thread debugging using libthread_db enabled] [New Thread 805434208 (LWP 14756)] [New Thread 814015728 (LWP 14759)] [New Thread 822404336 (LWP 14760)] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 805434208 (LWP 14756)] 0x0fd5c15c in mark_register_stack (interpreter=0x1001a008, chunk=0x101b5808) at register.c:532 532 PObj * const obj = (PObj *)CTX_REG_STR(&ctx, i); (gdb) bt #0 0x0fd5c15c in mark_register_stack (interpreter=0x1001a008, chunk=0x101b5808) at register.c:532 #1 0x0fe62ea0 in Parrot_Continuation_mark (interpreter=0x1001a008, pmc=0x10284510) at continuation.pmc:91 #2 0x0fddec44 in Parrot_dod_trace_children (interpreter=0x1001a008, how_many=4294966872) at dod.c:396 #3 0x0fdde92c in trace_active_PMCs (interpreter=0x1001a008, trace_stack=1) at dod.c:317 #4 0x0fddf9cc in Parrot_dod_ms_run (interpreter=0x1001a008, flags=1) at dod.c:959 #5 0x0fddfafc in Parrot_do_dod_run (interpreter=0x1001a008, flags=1) at dod.c:998 #6 0x0fe1d0f4 in mem_allocate (interpreter=0x1001a008, size=4292, pool=0x1001a9d0) at resources.c:146 #7 0x0fe1df60 in Parrot_reallocate_string (interpreter=0x1001a008, str=0x10203418, tosize=4288) at resources.c:634 #8 0x0fd69548 in string_append (interpreter=0x1001a008, a=0x10203418, b=0x102035f8, Uflags=1) at string.c:456 #9 0x0fd6a36c in string_concat (interpreter=0x1001a008, a=0x102034b8, b=0x102035f8, Uflags=1) at string.c:876 #10 0x0fd69420 in string_append (interpreter=0x1001a008, a=0x102034b8, b=0x102035f8, Uflags=1) at string.c:429 #11 0x0fef65bc in Parrot_scalar_i_concatenate_str (interpreter=0x1001a008, #12 0x0fe0c47c in mmd_dispatch_v_ps (interpreter=0x1001a008, left=0x1020da48, right=0x102035f8, func_nr=44) at mmd.c:476 #13 0x0fc2f2c0 in Parrot_infix_ic_p_s (cur_opcode=0x3104f30c, interpreter=0x1001a008) at math.ops:74 #14 0x0fd70c8c in runops_slow_core (interpreter=0x1001a008, pc=0x3104f30c) at runops_cores.c:184 #15 0x0fd53908 in runops_int (interpreter=0x1001a008, offset=3) at interpreter.c:775 #16 0x0fd5a170 in runops (interpreter=0x1001a008, offs=3) at inter_run.c:87 #17 0x0fd5a494 in runops_args (interpreter=0x1001a008, sub=0x101a5e38, obj=0x1005ce98, meth=0x0, sig=0xff534d8 "vP", ap=0x7ff5ed5c) at inter_run.c:193 #18 0x0fd5a688 in Parrot_runops_fromc_args (interpreter=0x1001a008, sub=0x101a5e38, sig=0xff534d8 "vP") at inter_run.c:295 #19 0x0fdd2cf8 in Parrot_runcode (interpreter=0x1001a008, argc=3, argv=0x7ff5f108) at embed.c:812 #20 0x10003e28 in main (argc=3, argv=0x7ff5f108) at main.c:731 (gdb) -- c