diff options
author | Nicholas Clark <nick@ccl4.org> | 2009-09-12 07:38:32 +0100 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2009-09-12 07:38:32 +0100 |
commit | a049506658d2a1f1262d7635971158f305c441f6 (patch) | |
tree | e91557a5668e2d6399fc93514123e7c39d084dde | |
parent | bc72ff4919d7f1638a7ea29ecb264459926b1933 (diff) | |
download | perl-a049506658d2a1f1262d7635971158f305c441f6.tar.gz |
re.pm will load under miniperl, so don't hard-code its values into ParseXS
(There's special-case code in the core to make re.pm available early as
lib/re.pm, as it's needed by other modules in the XS toolchain, so we don't need
a special case and attendant fragility in ExtUtils::ParseXS)
-rw-r--r-- | ext/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm | 6 | ||||
-rw-r--r-- | ext/re/re.pm | 5 |
2 files changed, 4 insertions, 7 deletions
diff --git a/ext/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm b/ext/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm index 3fa4cc00f5..93bca09819 100644 --- a/ext/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm +++ b/ext/ExtUtils-ParseXS/lib/ExtUtils/ParseXS.pm @@ -18,7 +18,7 @@ my(@XSStack); # Stack of conditionals and INCLUDEs my($XSS_work_idx, $cpp_next_tmp); use vars qw($VERSION); -$VERSION = '2.2002'; +$VERSION = '2.2003'; use vars qw(%input_expr %output_expr $ProtoUsed @InitFileCode $FH $proto_re $Overload $errors $Fallback $cplusplus $hiertype $WantPrototypes $WantVersionChk $except $WantLineNumbers @@ -210,7 +210,9 @@ sub process_file { $size = qr[,\s* (??{ $bal }) ]x; # Third arg (to setpvn) foreach my $key (keys %output_expr) { - BEGIN { $^H |= 0x00200000 }; # Equivalent to: use re 'eval', but hardcoded so we can compile re.xs + # We can still bootstrap compile 're', because in code re.pm is available to + # miniperl, and does not attempt to load the XS code. + use re 'eval'; my ($t, $with_size, $arg, $sarg) = ($output_expr{$key} =~ diff --git a/ext/re/re.pm b/ext/re/re.pm index 54d504f55e..742a018f86 100644 --- a/ext/re/re.pm +++ b/ext/re/re.pm @@ -23,11 +23,6 @@ my %bitmask = ( # - File::Basename contains a literal for 'taint' as a fallback. If # taint is changed here, File::Basename must be updated as well. # -# - ExtUtils::ParseXS uses a hardcoded -# BEGIN { $^H |= 0x00200000 } -# in it to allow re.xs to be built. So if 'eval' is changed here then -# ExtUtils::ParseXS must be changed as well. -# # *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** sub setcolor { |