On Mon, Sep 24, 2012 at 05:40:02AM -0700, Zsban Ambrus via RT wrote: > perl -we 'sub DB::DB; BEGIN { $^P = 0x22; } for (0 .. 9) { warn "hello > world"; }' Thanks for the terse test case. > This should give some kind of error or just print hello world ten times, > but instead at least perl 5.14 seems to do nothing and exit > successfully. I don't have a more recent perl at hand to test now, sorry. I do, but I don't have time to investigate this further (until at least Thursday, but more likely November) commit 432d4561c48cd74f3299eddc270a890908a4512e Author: Jesse Luehrs <doy@tozt.net> Date: Mon Sep 24 00:29:06 2012 -0500 don't crash with -d if DB::DB is seen but not defined [perl #114990] (gdb) r Starting program: /home/nick/Perl/perl/perl -we sub\ DB::DB\;\ BEGIN\ \{\ \$\^P\ =\ 0x22\;\ \}\ for\ \(0\ ..\ 9\)\ \{\ warn\ \"hello\ world\"\;\ \} Program received signal SIGSEGV, Segmentation fault. 0x0000000000528185 in Perl_pp_dbstate () at pp_ctl.c:1997 1997 PAD_SET_CUR_NOSAVE(CvPADLIST(cv), 1); (gdb) p cv $1 = (CV *) 0x7f2f78 (gdb) call Perl_sv_dump(cv) SV = PVCV(0x7f1098) at 0x7f2f78 REFCNT = 3 FLAGS = () COMP_STASH = 0x7dfff8 "DB" ROOT = 0x0 GVGV::GV = 0x7f2e88 "DB" :: "DB" FILE = "-e" DEPTH = 1 FLAGS = 0x0 OUTSIDE_SEQ = 0 PADLIST = 0x0 OUTSIDE = 0x0 (null) Nicholas ClarkThread Previous | Thread Next