C:\Users\jenda>perl -MO=Deparse -e "print 1+2" print 3; -e syntax OK C:\Users\jenda>perl -MO=Deparse -e "use constant ONE => 1; print ONE+2 +" use constant ('ONE', 1); print 3; -e syntax OK C:\Users\jenda>perl -MO=Deparse -e "sub ONE () {1}; print ONE+2" sub ONE () { 1 } print 3; -e syntax OK C:\Users\jenda>perl -MO=Deparse -e "use Readonly; Readonly $ONE => 1; +print $ONE+2" use Readonly; Readonly $ONE, 1; print $ONE + 2; -e syntax OK
See Constant folding. Apparently Readonly is not constant enough. So no constant folding, not unreachable code removal, ...
Jenda
Enoch was right!
Enjoy the last years of Rome.
In reply to Re^4: defining constant in other package
by Jenda
in thread defining constant in other package
by LanX
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |