#1783: t/compilers/pge/p5regex/p5rx.t and t/compilers/pge/perl6regex/01-regex.t:
test failures on Darwin/PPC since r48918
---------------------+------------------------------------------------------
 Reporter:  jkeenan  |       Owner:       
     Type:  bug      |      Status:  new  
 Priority:  normal   |   Milestone:       
Component:  PGE      |     Version:  2.7.0
 Severity:  medium   |    Keywords:       
     Lang:           |       Patch:       
 Platform:  darwin   |  
---------------------+------------------------------------------------------

Comment(by jkeenan):

 plobsing++ suggested this patch for diagnostic purposes:
 {{{
 Index: src/gc/api.c
 ===================================================================
 --- src/gc/api.c        (revision 48927)
 +++ src/gc/api.c        (working copy)
 @@ -166,7 +166,7 @@
  {
      ASSERT_ARGS(Parrot_gc_mark_PMC_alive_fun)
      if (!PMC_IS_NULL(obj)) {
 -        PARROT_ASSERT(PObj_is_PMC_TEST(obj));
 +        while (!PObj_is_PMC_TEST(obj));

          if (PObj_is_live_or_free_TESTALL(obj))
              return;
 }}}
 ... then called `make`.  The re-build halted at:
 {{{
 Linked: parrot_nci_thunk_gen ./parrot_nci_thunk_gen --loader-
 name=Parrot_glut_nci_loader --loader-name=Parrot_glut_nci_loader --loader-
 storage-class=PARROT_DYNEXT_EXPORT --output=src/glut_nci_thunks.c
 <src/glut_nci_thunks.nci
 }}}

 plobsing then instructed me in how to attach a PID to a `gdb [program]`
 call, which enabled me then to get this backtrace:
 {{{
 Attaching to program: `/Users/jimk/work/parrot/parrot_nci_thunk_gen',
 process 11663.
 Reading symbols for shared libraries .+.......++.+. done
 0x0207e7c0 in Parrot_gc_mark_PMC_alive_fun (interp=0x600c30,
 obj=0x1065de0) at src/gc/api.c:169
 169             while (!PObj_is_PMC_TEST(obj));


 (gdb) bt
 #0  0x0207e7c0 in Parrot_gc_mark_PMC_alive_fun (interp=0x600c30,
 obj=0x1065de0) at src/gc/api.c:169
 #1  0x02087208 in trace_mem_block (interp=0x600c30, mem_pools=0x600d90,
 lo_var_ptr=3221222688, hi_var_ptr=3221215292) at src/gc/system.c:469
 #2  0x02087380 in trace_system_stack (interp=0x600c30, mem_pools=0x600d90)
 at src/gc/system.c:257
 #3  0x02087444 in trace_system_areas (interp=0x600c30, mem_pools=0x600d90)
 at src/gc/system.c:227
 #4  0x0208546c in Parrot_gc_trace_root (interp=0x600c30,
 mem_pools=0x600d90, trace=GC_TRACE_FULL) at src/gc/mark_sweep.c:226
 #5  0x020830a8 in gc_ms_trace_active_PMCs (interp=0x600c30,
 trace=GC_TRACE_FULL) at src/gc/gc_ms.c:1467
 #6  0x02083244 in gc_ms_mark_and_sweep (interp=0x600c30, flags=2) at
 src/gc/gc_ms.c:552
 #7  0x0207fda0 in Parrot_gc_mark_and_sweep (interp=0x600c30, flags=2) at
 src/gc/api.c:690
 #8  0x0208362c in gc_ms_more_traceable_objects (interp=0x600c30,
 mem_pools=0x600d90, pool=0x600e50) at src/gc/gc_ms.c:1560
 #9  0x0208393c in gc_ms_get_free_object (interp=0x600c30,
 mem_pools=0x600d90, pool=0x600e50) at src/gc/gc_ms.c:1643
 #10 0x020813f8 in gc_ms_allocate_string_header (interp=0x600c30, flags=0)
 at src/gc/gc_ms.c:732
 #11 0x0207f270 in Parrot_gc_new_string_header (interp=0x600c30, flags=0)
 at src/gc/api.c:377
 #12 0x020099ec in Parrot_str_new_noinit (interp=0x600c30, capacity=274) at
 src/string/api.c:207
 #13 0x0200a8c4 in Parrot_str_concat (interp=0x600c30, a=0x10d9fc0,
 b=0x10d9fe0) at src/string/api.c:450
 #14 0x020e7300 in Parrot_sprintf_format (interp=0x600c30, pat=0x5f67c0,
 obj=0xbffff1ac) at src/spf_render.c:436
 #15 0x0209ea10 in Parrot_psprintf (interp=0x600c30, pat=0x5f67c0,
 ary=0x7c9770) at src/misc.c:243
 #16 0x0204a8d8 in Parrot_sprintf_s_s_p (cur_opcode=0x304ef18,
 interp=0x600c30) at src/ops/core_ops.c:22835
 #17 0x020e1338 in runops_fast_core (interp=0x600c30,
 runcore_unused=0x60e530, pc=0x304ef18) at src/runcore/cores.c:514
 #18 0x020e05fc in runops_int (interp=0x600c30, offset=6581) at
 src/runcore/main.c:219
 #19 0x02094f34 in runops (interp=0x600c30, offs=0) at src/call/ops.c:127
 #20 0x0208db38 in Parrot_pcc_invoke_from_sig_object (interp=0x600c30,
 sub_obj=0x72a0e0, call_object=0x72aa60) at src/call/pcc.c:325
 #21 0x02073e0c in Parrot_ext_call (interp=0x600c30, sub_pmc=0x72a0e0,
 signature=0x223aa1c "P->") at src/extend.c:322
 #22 0x02070278 in Parrot_runcode (interp=0x600c30, argc=4,
 argv=0xbffff5ec) at src/embed.c:812
 #23 0x00002f84 in main ()
 }}}

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/1783#comment:9>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to