On Sun Mar 22 07:42:24 2009, fperrad wrote: > 2009/3/22 Will Coleda via RT <[email protected]>: > > On Sat Jan 31 17:51:51 2009, [email protected] wrote: > >> Thanks. Making that correction, I confirm that the OP's seg fault > still > >> occurs: > >> > >> $ cat seg.pir > >> .sub main :main > >> .include 'include/test_more.pir' > >> > >> new $P0, 'Integer' > >> new $P2, 'Integer' > >> new $P1, 'Integer' > >> > >> set $P0, 1 > >> set $P2, 0 > >> > >> ok( 1, 'ready...' ) > >> > >> push_eh handler > >> $P1 = $P0 / $P2 > >> ok( 0, "not caught" ) > >> end > >> pop_eh > >> handler: > >> ok( 1, 'caught' ) # segfaults > >> # say "ok" # no problem with this > >> .end > >> > >> # Local Variables: > >> # mode: pir > >> # fill-column: 100 > >> # End: > >> # vim: expandtab shiftwidth=4 ft=pir: > >> > >> $ ./parrot seg.pir > >> ok 1 - ready... > >> Segmentation fault > > > > Still segfaulting in r37615. > > > > Here's the backtrace. > > > > #0 0x010925ef in clone_key_arg (interp=0x2300da0, st=0xbfffc618) at > src/call/pcc.c:1191 > > #1 0x01092729 in Parrot_convert_arg (interp=0x2300da0, > st=0xbfffc618) at > > src/call/pcc.c:1817 > > #2 0x01093792 in Parrot_process_args (interp=0x2300da0, > st=0xbfffc618, > > param_or_result=PARROT_PASS_PARAMS) at src/call/pcc.c:1694 > > #3 0x01093cc2 in parrot_pass_args (interp=0x2300da0, > src_ctx=0x2324a70, > > dest_ctx=0x233bce0, src_indexes=0x2327488, dest_indexes=0x3591fc, > > param_or_result=PARROT_PASS_PARAMS) at src/call/pcc.c:1884 > > #4 0x0100fd10 in Parrot_get_params_pc (cur_opcode=0x3591fc, > interp=0x2300da0) at > > src/ops/core.ops:615 > > #5 0x010e68f3 in runops_slow_core (interp=0x2300da0, pc=0x3591fc) > at > > src/runops_cores.c:461 > > #6 0x01099bc5 in runops_int (interp=0x2300da0, offset=66) at > src/interpreter.c:980 > > #7 0x0109a651 in runops (interp=0x2300da0, offs=66) at > src/call/ops.c:107 > > #8 0x0109a917 in runops_args (interp=0x2300da0, sub=0x370750, > obj=0x28354b0, > > meth_unused=0x0, sig=0x12eddc8 "vP", ap=0xbfffc87c "x\0067") at > src/call/ops.c:254 > > #9 0x0109b759 in Parrot_runops_fromc_args (interp=0x2300da0, > sub=0x370750, > > sig=0x12eddc8 "vP") at src/call/ops.c:321 > > #10 0x0107b775 in Parrot_ex_throw_from_c (interp=0x2300da0, > exception=0x370678) at > > src/exceptions.c:341 > > #11 0x0107bd4f in Parrot_ex_throw_from_c_args (interp=0x2300da0, > > ret_addr_unused=0x0, exitcode=30, format=0x131cddc "float division > by zero") at > > src/exceptions.c:410 > > #12 0x011beec5 in Parrot_Integer_multi_divide_DEFAULT_PMC > (interp=0x2300da0, > > pmc=0x32b8e8, value=0x32b858, dest=0x32b828) at > ./src/pmc/integer.pmc:805 > > #13 0x010a8bae in pcf_P_JPPP (interp=0x2300da0, self=0x283dc90) at > src/nci.c:609 > > #14 0x011b18a9 in Parrot_NCI_invoke (interp=0x2300da0, > pmc=0x283dc90, next=0x0) at > > ./src/pmc/nci.pmc:330 > > #15 0x0109635f in Parrot_pcc_invoke_from_sig_object > (interp=0x2300da0, > > sub_obj=0x283dc90, sig_obj=0x370720) at src/call/pcc.c:2980 > > #16 0x010a6dfc in Parrot_mmd_multi_dispatch_from_c_args > (interp=0x2300da0, > > name=0x12ec650 "divide", sig=0x1301048 "PPP->P") at > src/multidispatch.c:340 > > #17 0x0117d1f4 in Parrot_default_divide (interp=0x2300da0, > pmc=0x32b8e8, > > value=0x32b858, dest=0x32b828) at ./src/pmc/default.pmc:1473 > > #18 0x01023aa0 in Parrot_div_p_p_p (cur_opcode=0x2327444, > interp=0x2300da0) at > > src/ops/math.ops:402 > > #19 0x010e68f3 in runops_slow_core (interp=0x2300da0, pc=0x2327444) > at > > src/runops_cores.c:461 > > #20 0x01099bc5 in runops_int (interp=0x2300da0, offset=0) at > src/interpreter.c:980 > > #21 0x0109a651 in runops (interp=0x2300da0, offs=0) at > src/call/ops.c:107 > > #22 0x0109a917 in runops_args (interp=0x2300da0, sub=0x32ef78, > obj=0x28354b0, > > meth_unused=0x0, sig=0x12eddc8 "vP", ap=0xbfffed2c "`?2") at > src/call/ops.c:254 > > #23 0x0109b759 in Parrot_runops_fromc_args (interp=0x2300da0, > sub=0x32ef78, > > sig=0x12eddc8 "vP") at src/call/ops.c:321 > > #24 0x01077d8e in Parrot_runcode (interp=0x2300da0, argc=1, > argv=0xbfffee80) at > > src/embed.c:1011 > > #25 0x012d2caf in imcc_run_pbc (interp=0x2300da0, obj_file=0, > output_file=0x0, argc=1, > > argv=0xbfffee80) at compilers/imcc/main.c:798 > > #26 0x012d3936 in imcc_run (interp=0x2300da0, sourcefile=0xbfffef5f > "foo.pir", argc=1, > > argv=0xbfffee80) at compilers/imcc/main.c:1085 > > #27 0x000029b8 in main (argc=1, argv=0xbfffee80) at src/main.c:61 > > The program is running. Exit anyway? (y or n) > > > > > > Look like https://trac.parrot.org/parrot/ticket/472 > > François. > > > > > -- > > Will "Coke" Coleda > > _______________________________________________ > > http://lists.parrot.org/mailman/listinfo/parrot-dev > > > > >
This no longer segfaults. (Verified in r41388) -- Will "Coke" Coleda _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
