diff options
author | Karl Berry <karl@freefriends.org> | 2020-03-07 22:52:33 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-03-07 22:52:33 +0000 |
commit | 11c6e5fc65f26ba5219997d19707b998a9abf26d (patch) | |
tree | a1dc8073a679611d3f09c01eda006cc3f6f846b1 /Master/tlpkg/tlperl/lib/B/Deparse.pm | |
parent | a6593bd4f2eb12ae25540de026f7f9ebcf230a2f (diff) |
tl20 perl 5.30.1 for Windows, from Siep
git-svn-id: svn://tug.org/texlive/trunk@54166 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/tlperl/lib/B/Deparse.pm')
-rw-r--r-- | Master/tlpkg/tlperl/lib/B/Deparse.pm | 31 |
1 files changed, 5 insertions, 26 deletions
diff --git a/Master/tlpkg/tlperl/lib/B/Deparse.pm b/Master/tlpkg/tlperl/lib/B/Deparse.pm index 23045a8dd37..d7dc060fc6d 100644 --- a/Master/tlpkg/tlperl/lib/B/Deparse.pm +++ b/Master/tlpkg/tlperl/lib/B/Deparse.pm @@ -52,7 +52,7 @@ use B qw(class main_root main_start main_cv svref_2object opnumber perlstring MDEREF_SHIFT ); -$VERSION = '1.48'; +$VERSION = '1.49'; use strict; our $AUTOLOAD; use warnings (); @@ -68,7 +68,7 @@ BEGIN { OPpPAD_STATE PMf_SKIPWHITE RXf_SKIPWHITE PMf_CHARSET PMf_KEEPCOPY PMf_NOCAPTURE CVf_ANONCONST CVf_LOCKED OPpREVERSE_INPLACE OPpSUBSTR_REPL_FIRST - PMf_NONDESTRUCT OPpCONST_ARYBASE OPpEVAL_BYTES + PMf_NONDESTRUCT OPpEVAL_BYTES OPpLVREF_TYPE OPpLVREF_SV OPpLVREF_AV OPpLVREF_HV OPpLVREF_CV OPpLVREF_ELEM SVpad_STATE)) { eval { B->import($_) }; @@ -791,7 +791,6 @@ sub new { $self->{'use_dumper'} = 0; $self->{'use_tabs'} = 0; - $self->{'ambient_arybase'} = 0; $self->{'ambient_warnings'} = undef; # Assume no lexical warnings $self->{'ambient_hints'} = 0; $self->{'ambient_hinthash'} = undef; @@ -837,7 +836,6 @@ sub new { sub init { my $self = shift; - $self->{'arybase'} = $self->{'ambient_arybase'}; $self->{'warnings'} = defined ($self->{'ambient_warnings'}) ? $self->{'ambient_warnings'} & WARN_MASK : undef; @@ -953,7 +951,7 @@ my %strict_bits = do { sub ambient_pragmas { my $self = shift; - my ($arybase, $hint_bits, $warning_bits, $hinthash) = (0, 0); + my ($hint_bits, $warning_bits, $hinthash) = (0); while (@_ > 1) { my $name = shift(); @@ -980,14 +978,6 @@ sub ambient_pragmas { $hint_bits |= $strict_bits{$_} for @names; } - elsif ($name eq '$[') { - if (OPpCONST_ARYBASE) { - $arybase = $val; - } else { - croak "\$[ can't be non-zero on this perl" unless $val == 0; - } - } - elsif ($name eq 'integer' || $name eq 'bytes' || $name eq 'utf8') { @@ -1058,7 +1048,6 @@ sub ambient_pragmas { croak "The ambient_pragmas method expects an even number of args"; } - $self->{'ambient_arybase'} = $arybase; $self->{'ambient_warnings'} = $warning_bits; $self->{'ambient_hints'} = $hint_bits; $self->{'ambient_hinthash'} = $hinthash; @@ -2052,11 +2041,6 @@ sub pragmata { $self->{'curstash'} = $stash; } - if (OPpCONST_ARYBASE && $self->{'arybase'} != $op->arybase) { - push @text, '$[ = '. $op->arybase .";\n"; - $self->{'arybase'} = $op->arybase; - } - my $warnings = $op->warnings; my $warning_bits; if ($warnings->isa("B::SPECIAL") && $$warnings == 4) { @@ -4129,7 +4113,7 @@ sub pp_aelemfast_lex { $name =~ s/^@/\$/; my $i = $op->private; $i -= 256 if $i > 127; - return $name . "[" . ($i + $self->{'arybase'}) . "]"; + return $name . "[$i]"; } sub pp_aelemfast { @@ -4143,7 +4127,7 @@ sub pp_aelemfast { $name = $quoted ? "$name->" : '$' . $name; my $i = $op->private; $i -= 256 if $i > 127; - return $name . "[" . ($i + $self->{'arybase'}) . "]"; + return $name . "[$i]"; } sub rv2x { @@ -5456,9 +5440,6 @@ sub meth_rclass_sv { sub pp_const { my $self = shift; my($op, $cx) = @_; - if ($op->private & OPpCONST_ARYBASE) { - return '$['; - } # if ($op->private & OPpCONST_BARE) { # trouble with '=>' autoquoting # return $self->const_sv($op)->PV; # } @@ -5490,7 +5471,6 @@ sub dq { my $op = shift; my $type = $op->name; if ($type eq "const") { - return '$[' if $op->private & OPpCONST_ARYBASE; return uninterp(escape_str(unback($self->const_sv($op)->as_string))); } elsif ($type eq "concat") { return dq_disambiguate($self->dq($op->first), $self->dq($op->last)); @@ -5851,7 +5831,6 @@ sub re_dq { my $type = $op->name; if ($type eq "const") { - return '$[' if $op->private & OPpCONST_ARYBASE; my $unbacked = re_unback($self->const_sv($op)->as_string); return re_uninterp(escape_re($unbacked)); } elsif ($type eq "concat") { |