diff options
Diffstat (limited to 'ext/B')
-rw-r--r-- | ext/B/B/Bytecode.pm | 4 | ||||
-rw-r--r-- | ext/B/B/Disassembler.pm | 7 |
2 files changed, 9 insertions, 2 deletions
diff --git a/ext/B/B/Bytecode.pm b/ext/B/B/Bytecode.pm index 27003b6bd0..941a818f6b 100644 --- a/ext/B/B/Bytecode.pm +++ b/ext/B/B/Bytecode.pm @@ -654,8 +654,8 @@ sub bytecompile_main { warn "done main program, now walking symbol table\n" if $debug_bc; my ($pack, %exclude); foreach $pack (qw(B O AutoLoader DynaLoader XSLoader Config DB VMS strict vars - FileHandle Exporter Carp UNIVERSAL IO Fcntl Symbol - SelectSaver blib Cwd)) + FileHandle Exporter Carp UNIVERSAL IO Fcntl Symbol warnings + attributes File::Spec SelectSaver blib Cwd)) { $exclude{$pack."::"} = 1; } diff --git a/ext/B/B/Disassembler.pm b/ext/B/B/Disassembler.pm index d054a2d164..212532b9ce 100644 --- a/ext/B/B/Disassembler.pm +++ b/ext/B/B/Disassembler.pm @@ -31,6 +31,13 @@ sub GET_U16 { return unpack("n", $str); } +sub GET_NV { + my $fh = shift; + my $str = $fh->readn(8); + croak "reached EOF while reading NV" unless length($str) == 8; + return unpack("N", $str); +} + sub GET_U32 { my $fh = shift; my $str = $fh->readn(4); |