Subject: | BeginLift + Method::Signatures::Simple causes a "Useless use of a constant" warning |
Applying Devel::BeginLift to make methods declared with
Method::Signatures::Simple to happen at compile time will under
certain conditions cause a "Useless use of a constant in void context"
warning.
Code tickling the bug is attached. Run "perl -Ilib -dw test" to see it.
$ perl5.12 -Ilib -dw test
Loading DB routines from perl5db.pl version 1.33
Editor support available.
Enter h or `h h' for help, or `man perldebug' for more help.
Useless use of a constant (undef) in void context at lib/Example.pm
line 6.
at lib/Example.pm line 6
require Example.pm called at test line 3
main::BEGIN() called at lib/Example.pm line 8
eval {...} called at lib/Example.pm line 8
Debugged program terminated. Use q to quit or R to restart,
use o inhibit_exit to avoid stopping after program termination,
h q, h R or h o to get additional info.
DB<1> q
It will only happen in the debugger, and only when "use warnings" is
on. I suspect there may be a difference between the nextstate and
dbstate ops that isn't being accounted for somewhere.
The problem occurs on all Perls I checked. 5.10.1, 5.12.0 and 5.12.1.
They are using Devel::Declare 0.00600, Method::Signatures::Simple 0.06
and Devel::BeginLift 0.001003.
Subject: | bug.tgz |
Message body not shown because it is not plain text.