Description of problem: Attempting to execute the following code produces a segmentation fault: sub frob { my ($r) = @_; sub { . 3; }; } Version-Release number of selected component (if applicable): perl-5.8.8-10 How reproducible: Run the code above. Steps to Reproduce: 1. Save the code above in a text file (6 lines) called "oops". 2. Type "perl < oops" Actual results: Seg fault Expected results: Syntax error Additional info: None
Problem still exists in perl-5.8.8-27.fc7
Problem persists on: $ rpm -q perl perl-5.8.8-33.fc8.x86_64
The backtrace looks like this: Program terminated with signal 11, Segmentation fault. #0 Perl_pad_free (my_perl=0x603010, po=4) at pad.c:1180 1180 SvPADTMP_off(PL_curpad[po]); (gdb) bt #0 Perl_pad_free (my_perl=0x603010, po=4) at pad.c:1180 #1 0x00002aaaaab05bb8 in Perl_op_clear (my_perl=0x603010, o=0x60cc00) at op.c:515 #2 0x00002aaaaab07d4b in Perl_op_free (my_perl=0x603010, o=0x60cc00) at op.c:379 #3 0x00002aaaaab07d0c in Perl_op_free (my_perl=0x603010, o=0x60cd10) at op.c:367 #4 0x00002aaaaab1228a in Perl_newATTRSUB (my_perl=0x603010, floor=103, o=<value optimized out>, proto=0x0, attrs=0x0, block=0x60cd10) at op.c:4426 #5 0x00002aaaaab03638 in Perl_yyparse (my_perl=0x603010) at perly.y:364 #6 0x00002aaaaaae2c92 in S_parse_body (my_perl=0x603010, env=0x0, xsinit=0x4017e0 <xs_init>) at perl.c:2212 #7 0x00002aaaaaae54e9 in perl_parse (my_perl=0x603010, xsinit=0x4017e0 <xs_init>, argc=2, argv=0x7fffa2dee488, env=0x0) at perl.c:1599 #8 0x0000000000401773 in main (argc=2, argv=0x7fffa2dee488, env=<value optimized out>) at perlmain.c:97 (gdb)