I had a lengthy debugging session with a friend on why -w suddenly
warned where it didn't before.
The test case was something like this:
| while(<SERVER>) {
| print;
| if(/^([^\s]+\s+)?PING(\s+.*)$/) {
| print SERVER "${1}PONG${2}\r\n";
| }
| }
where the input line was "PING :foo\r\n", i.e. $1 is undef, and should
warn.
The shortest test case i found is:
| ice:~>echo a |perl5.6.1 -we 'print "$1"'
| Use of uninitialized value in string at -e line 1.
| ice:~>echo a |perl5.6.1 -we 'print "$1\n"'
|
| ice:~>echo a |perl5.6.1 -we 'print ".$1\n"'
| Use of uninitialized value in concatenation (.) or string at -e line 1.
| .
just for a quick check, my normal perl behaves as expected:
| ice:~>echo a |perl5.00503 -we 'print "$1\n"'
| Use of uninitialized value at -e line 1.
Now if somebody could explain to me how and why this happens?
CU,
Sec
--
See above, I�d vote now to remove TCP completely after seeing that results.
-- <[EMAIL PROTECTED]> on freebsd-ports, 2.Aug.1997