#1131: segfault in Parrot_assign_p_p after merge of pcc branch.
--------------------+-------------------------------------------------------
Reporter: coke | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: none | Version: trunk
Severity: fatal | Keywords:
Lang: | Patch:
Platform: |
--------------------+-------------------------------------------------------
with latest parrot and partcl, the tcl code
{{{
proc sort {a b} { return 0 }
puts [lsort -command sort [list 1 2]]
}}}
Generates a segfault. This code uses the sort method on RPA, using a sub
compiled with the dynamic PIR compiler. Here's the snippet around the
segfault in PIR - note that the segfault is actually in the assign.
{{{
# the assigns are necessary to avoid TT# 218
$P0 = $P0.'getListValue'()
$P1 = new 'ResizablePMCArray'
assign $P1, $P0
$P1.'sort'(compare)
assign $P0, $P1
}}}
{{{
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ff95aeb16f0 (LWP 25793)]
0x00007ff95a8b9271 in Parrot_assign_p_p (cur_opcode=0x7ff95ad850d8,
interp=0xcaa010) at src/ops/set.ops:234
234 VTABLE_assign_pmc(interp, $1, $2);
(gdb) bt
#0 0x00007ff95a8b9271 in Parrot_assign_p_p (cur_opcode=0x7ff95ad850d8,
interp=0xcaa010) at src/ops/set.ops:234
#1 0x00007ff95a92954d in runops_fast_core (interp=0xcaa010,
runcore=<value optimized out>, pc=0xcaa010) at src/runcore/cores.c:665
#2 0x00007ff95a928de1 in runops_int (interp=0xcaa010, offset=0)
at src/runcore/main.c:545
#3 0x00007ff95a9021f1 in runops (interp=0xcaa010, offs=<value optimized
out>)
at src/call/ops.c:97
#4 0x00007ff95a8fc7fb in Parrot_pcc_invoke_from_sig_object
(interp=0xcaa010,
sub_obj=<value optimized out>, call_object=<value optimized out>)
at src/call/pcc.c:243
#5 0x00007ff95a8fc8d4 in Parrot_pcc_invoke_sub_from_c_args
(interp=0xcaa010,
sub_obj=0xdc6158, sig=<value optimized out>) at src/call/pcc.c:66
#6 0x0000000000400d2b in main (argc=2, argv=0x7fff62ebe6a8) at tcl.c:444
}}}
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1131>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets