New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
crash when localizing a symtab entry #9287
Comments
From @ntyniThis snippet crashes Perl 5.10.0 and blead (as of change 33541 which #!/usr/bin/perl -w (The snippet is reduced from the mod_perl2 2.0.4rc1 test suite, This can be reduced to #!/usr/bin/perl and expanded to this core-only test: #!/usr/bin/perl Bisecting shows the segfault started with [ 29544] By: nicholas on 2006/12/13 08:35:43 On blead, change 32708 turns this into an assertion failure with -DDEBUGGING: miniperl: sv.c:3231: S_glob_assign_glob: Assertion `((((shplep)->sv_flags & (0x00004000|0x00008000)) == 0x00008000) && (((svtype)((shplep)->sv_flags & 0xff)) == SVt_PVGV || ((svtype)((shplep)->sv_flags & 0xff)) == SVt_PVLV))' failed. Backtrace of 'miniperl' as of change 33541 without -DDEBUGGING: Core was generated by `./miniperl /home/niko/t.pl'. Backtrace with -DDEBUGGING and the assertion failure above: Core was generated by `./miniperl /home/niko/t.pl'. Flags: Site configuration information for perl 5.10.0: Configured by Debian Project at Sun Mar 30 20:28:28 UTC 2008. Summary of my perl5 (revision 5 version 10 subversion 0) configuration: Locally applied patches: @INC for perl 5.10.0: Environment for perl 5.10.0: |
From @rgs2008/4/11 via RT Niko Tyni <perlbug-followup@perl.org>:
Thanks for the impressive and detailed bug report, that was useful. Here's a patch that solves the problem. I've not had time yet to run all tests --- sv.c if (dtype >= SVt_PV) { |
The RT System itself - Status changed from 'new' to 'open' |
From @rgsI've now applied the patch to bleadperl as change #33807. |
@rgs - Status changed from 'open' to 'resolved' |
From @rurban2008/5/10 Rafael Garcia-Suarez via RT <perlbug-followup@perl.org>:
We also need that for maint (5.10.x) |
From p5p@spam.wizbit.beOn Fri May 09 08:50:13 2008, rafael wrote:
The patch was applied with Change 33807 but no tests were included. A patch with the test is attached (added it in t/op/local.t). Kind regards, Bram |
From p5p@spam.wizbit.beInline Patch--- old/t/op/local.t 2008-08-10 19:47:08.000000000 +0200
+++ new/t/op/local.t 2008-08-10 19:55:51.000000000 +0200
@@ -5,7 +5,7 @@
@INC = qw(. ../lib);
require './test.pl';
}
-plan tests => 122;
+plan tests => 123;
my $list_assignment_supported = 1;
@@ -451,6 +451,11 @@
is($h{'k1'},111);
}
+like( runperl(stderr => 1,
+ prog => 'use constant foo => q(a);' .
+ 'index(q(a), foo);' .
+ 'local *g=${::}{foo};print "ok";'), "ok", "[perl #52740]");
+
# Keep this test last, as it can SEGV
{
local *@; |
From @TuxOn Sun, 10 Aug 2008 10:59:16 -0700, "Bram via RT"
Thanks, applied as change #34198
-- |
Migrated from rt.perl.org#52740 (status was 'resolved')
Searchable as RT52740$
The text was updated successfully, but these errors were encountered: