When we get this question at PerlMonks, it's always an "if" with an "elsif" clause. Sometimes, the petitioner doesn't mention the presence of an elsif clause, but we tell them the error is there anyway.
For run-time errors/warnings, Perl tells you which statement generated the error. You have to look at the whole statement when it spans multiple lines (as is the case here).
I thought they fixed this for if/elsif. Maybe the fix is in upcoming 5.10.1?
Note the error message in 5.10.0 is better than the one you presented:
Use of uninitialized value $_ in pattern match (m//) at t.pl line 6. ^^ ||
ActiveState also had their own patch in 5.8.8 (but not 5.8.9 and 5.10.0):
Use of uninitialized value in pattern match (m//) at t.pl line 10. ^^ ||
In reply to Re: Tracking down the line in error or warning
by ikegami
in thread Tracking down the line in error or warning
by PoorLuzer
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |