A
Alexander Frink
Hi!
I tried to use lint to detect undefined subroutines in a Perl script, but
recent 5.8 versions seem to fail.
With Perl 5.6.1 on Linux, everything still works as expected:
$ perl -MO=Lint,all -e 'foo();'
Undefined subroutine foo called at -e line 1
-e syntax OK
But with 5.8.8 for Win32, 5.8.5 for Linux and 5.8.2 for AIX, the undefined
sub is not detected:
$ perl -MO=Lint,all -e 'foo();'
-e syntax OK
One difference is that the 5.6.1 version is single-threaded, whereas all
other versions to which I have access are multi-threaded. The B::Lint man
page says "This module doesn't work correctly on thread-enabled perls."
Is there a way to force Perl to single-threaded mode without recompiling?
Or is this simply a bug?
Regards,
Alex
I tried to use lint to detect undefined subroutines in a Perl script, but
recent 5.8 versions seem to fail.
With Perl 5.6.1 on Linux, everything still works as expected:
$ perl -MO=Lint,all -e 'foo();'
Undefined subroutine foo called at -e line 1
-e syntax OK
But with 5.8.8 for Win32, 5.8.5 for Linux and 5.8.2 for AIX, the undefined
sub is not detected:
$ perl -MO=Lint,all -e 'foo();'
-e syntax OK
One difference is that the 5.6.1 version is single-threaded, whereas all
other versions to which I have access are multi-threaded. The B::Lint man
page says "This module doesn't work correctly on thread-enabled perls."
Is there a way to force Perl to single-threaded mode without recompiling?
Or is this simply a bug?
Regards,
Alex