The Perl Advent Calendar needs more articles for 2022. Submit your idea today!


uninit - Warn about uninitialized variables


    perl -Muninit myprogram


It's all very well being warned about the use of undef if you don't know what variable it is that contains undef, especially if you've got more than one variable in a line.

uninit attempts to do compile-time static checking of your program to see if any variables are used before they have any values assigned to them; it also reports which variable actually caused the problem.

It isn't guaranteed to catch all cases, and you can probably trick it with judicious use of eval, but I can't do anything about that. It's only a guideline.


Simon Cozens,


optimize, B