Closed p5pRT closed 20 years ago
[gnat@localhost]$ make test
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/opt/perl/5.005_58/i586-linux -I/opt/perl/5.005_58 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/basic.............Use of uninitialized value at /opt/perl/5.005_58/ExtUtils/MM_Unix.pm line 110.
t/basic.............ok 2/5Exiting subroutine via last at blib/lib/CPAN/WAIT.pm line 46.
Exiting subroutine via last at blib/lib/CPAN/WAIT.pm line 46.
Label not found for "last SERVER" at blib/lib/CPAN/WAIT.pm line 46.
t/basic.............dubious
Test returned status 255 (wstat 65280\, 0xff00)
With 5.005_57:
[gnat@localhost]$ make test
PERL_DL_NONLAZY=1 /usr/bin/perl5.00557 -Iblib/arch -Iblib/lib -I/opt/perl/5.005_57/i586-linux -I/opt/perl/5.005_57 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/basic.............Use of uninitialized value at /opt/perl/5.005_57/ExtUtils/MM_Unix.pm line 111.
t/basic.............ok
All tests successful.
Files=1\, Tests=5\, 5 wallclock secs ( 1.24 cusr + 0.13 csys = 1.37 CPU)
The weird thing being\, of course\, that 5.005_58 can't find the SERVER symbol\, while 5.005_57 can. I've tried looking at the op tree\, and while there's a heap of it\, I couldn't see any obvious differences between the two. I tried looking at the output of B::Terse on both\, and I see that _58 is using the new method op of Chip's\, but otherwise they seem identical.
The troublesome thing is that I can't narrow it down to a single piece of code. I tried perl -e 'SERVER: for (1\,2\,3) { last if 1 }' and perl -e 'sub foo { SERVER: for (1\,2\,3) { last if 1 }} foo()' but neither reproduces the difference between _57 and _58.
If anyone does manage to track this down\, I'd love to know how you did it.
This problem occurs on both FreeBSD and Redhat Linux running _58.
Nat
According to Nat Torkington:
The weird thing being\, of course\, that 5.005_58 can't find the SERVER symbol\, while 5.005_57 can.
There was a change in the goto logic. Maybe that's relevant.
If anyone does manage to track this down\, I'd love to know how you did it.
In desperate situations\, I've diff'd the output of "perl -Dts". -- Chip Salzenberg - a.k.a. - \chip@​perlsupport\.com "When do you work?" "Whenever I'm not busy."
Migrated from rt.perl.org#1125 (status was 'resolved')
Searchable as RT1125$