This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Move Storable from ext/ to dist/
[perl5.git] / dist / Storable / hints / linux.pl
1 # gcc -O3 (and higher) can cause code produced from Storable.xs that
2 # dumps core immediately in recurse.t and retrieve.t, in is_storing()
3 # and last_op_in_netorder(), respectively.  In both cases the cxt is
4 # full of junk (and according to valgrind the cxt was never stack'd,
5 # malloc'd or free'd).  Observed in Debian 3.0 x86, with gccs 2.95.4
6 # 20011002 and 3.3, and in Redhat 7.1 with gcc 3.3.1. The failures
7 # happen only for unthreaded builds, threaded builds work okay.
8 use Config;
9 if ($Config{gccversion}) {
10     my $optimize = $Config{optimize};
11     if ($optimize =~ s/(^| )-O[3-9]( |$)/$1-O2$2/) {
12         $self->{OPTIMIZE} = $optimize;
13     }
14 }
15