| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This moves a test to earlier in the file where it now fails, and makes
it TODO. It also creates a copy just after the failure, this time
without the TODO, to show that it is order dependent.
This is in preparation for some commits that exposed this bug.
|
|
|
|
|
| |
Instead of fixing a typo programmatically, just spell it correctly to
begin with. This should make things just slightly faster.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A git bisect run like this:
$ ../perl.git/Porting/bisect.pl --start=v5.12.0 --end=v5.18.0 -e 'use B::Deparse; die if new B::Deparse->coderef2text(sub{glob my $x}) =~ /</'
points to v5.13.8-86-gd1bea3d as being the commit that cause it to
output <my $x>.
But my local 5.14.4 installation still outputs glob(my $x), so I am
not sure which commit is responsible. I suspect it changed multi-
ple times.
In any case, B::Deparse was expecting the argument to pp_glob always
to be a string, which is certainly not guaranteed.
This commit also causes CORE::glob to be deparsed correctly. glob is
one of those oddities like require that gets only half-overridden by
overrides. In this particular case the built-in pp_glob is still
used, but takes a different code path depending on whether it was pre-
fixed with CORE::. So, while glob is a strong keyword, it needs to be
treated as a weak one for deparsing purposes.
|
| |
|
|
|
|
|
|
|
|
| |
Code that does not warn should not be deparsed in a way that warns.
s//\3/e produces a warning about misuse of \3 where $3 is meant.
s//\(3)/e compiles to the same thing and produces no such warning.
So B::Deparse should parenthesize references to numbers in the rhs
of a substitution.
|
|
|
|
|
|
| |
[perl #120182]
the precomp B::OP method was returning a non-UTF8 string even if the
regex was utf8
|
| |
|
|
|
|
|
|
| |
now builds by default (without the byteperl executable so far) and
seems to work at least minimally.
p4raw-id: //depot/perl@565
|
|
|
|
|
| |
[Still won't work as of this change.]
p4raw-id: //depot/perl@563
|
|
ext/B/..., some to lib/B/..., O.pm and B.pm go in lib and some
move to the base perl directory (e.g. headers). Will need some
cleaning up before it builds properly, I would guess.
p4raw-id: //depot/perl@562
|