RT#81332 revert 744aaba0 bloats the B compilers
For 5.17.7-8, B-1.41
diff -u ext/B/B.pm.orig ext/B/B.pm
--- ext/B/B.pm.orig 2012-11-28 16:28:25.376657707 -0600
+++ ext/B/B.pm 2013-01-09 13:35:28.247382145 -0600
@@ -6,26 +6,16 @@
# License or the Artistic License, as specified in the README file.
#
package B;
-use strict;
+require XSLoader;
require Exporter;
@B::ISA = qw(Exporter);
# walkoptree_slow comes from B.pm (you are there),
# walkoptree comes from B.xs
-BEGIN {
- $B::VERSION = '1.41';
- @B::EXPORT_OK = ();
-
- # Our BOOT code needs $VERSION set, and will append to @EXPORT_OK.
- # Want our constants loaded before the compiler meets OPf_KIDS below, as
- # the combination of having the constant stay a Proxy Constant Subroutine
- # and its value being inlined saves a little over .5K
-
- require XSLoader;
- XSLoader::load();
-}
+$B::VERSION = '1.41_01';
+@B::EXPORT_OK = ();
push @B::EXPORT_OK, (qw(minus_c ppname save_BEGINs
class peekop cast_I32 cstring cchar hash threadsv_names
@@ -37,6 +27,9 @@
defstash curstash warnhook diehook inc_gv @optype
@specialsv_name unitcheck_av));
+sub OPf_KIDS ();
+use strict;
+
@B::SV::ISA = 'B::OBJECT';
@B::NULL::ISA = 'B::SV';
@B::PV::ISA = 'B::SV';
@@ -330,6 +323,8 @@
}
}
+XSLoader::load();
+
1;
__END__