The fundamental problem here was poor loop design. The use of for(;;){} or while (1){} should be restricted to very special circumstances like an infinite loop in server code to wait for next connection, etc. If the loop is coded differently and I would argue properly, as corion suggests, while (<>){}, this handling undef inside the loop problem goes away.
In reply to Re^5: uninitialized value $_
by Marshall
in thread uninitialized value $_
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |