For the skinny on version strings, including their deprecation from the forthcoming 5.10 onwards, see the heading Version Strings in perldata.
To clear up the confusion about your third example, try adding -w.
C:\DELL\v>perl -wle"print -64.0.0.1" Argument "@\0\0^A" isn't numeric in negation (-) at -e line 1. 0
However, I can't come up with an explanation for the difference in treatment of your fourth example and similar. Only observe that no warning is emitted for upper or lower case alpha characters?
C:\DELL\v>perl -wle"print -64.0.0.1" Argument "@\0\0^A" isn't numeric in negation (-) at -e line 1. 0 C:\DELL\v>perl -wle"print -65.0.0.1" -A ☺ C:\DELL\v>perl -wle"print -90.0.0.1" -Z ☺ C:\DELL\v>perl -wle"print -91.0.0.1" Argument "[\0\0^A" isn't numeric in negation (-) at -e line 1. 0 C:\DELL\v>perl -wle"print -96.0.0.1" Argument "`\0\0^A" isn't numeric in negation (-) at -e line 1. 0 C:\DELL\v>perl -wle"print -97.0.0.1" -a ☺ C:\DELL\v>perl -wle"print -122.0.0.1" -z ☺ C:\DELL\v>perl -wle"print -123.0.0.1" Argument "{\0\0^A" isn't numeric in negation (-) at -e line 1. 0
Quite why that would be so I cannot fathom.
In reply to Re: version string oddities
by BrowserUk
in thread version string oddities
by chrisdolan
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |