My work colleague Mike O'Regan created a policy for the latest version of Perl::Critic.

Now if you have a line of code like this:

my $n += somefunc();
# Should be my $n = somefunc();

Perl::Critic will tell you

Augmented assignment operator '+=' used in declaration at line X, column Y. Use simple assignment when initializing variables.

If you haven't let Perl::Critic loose on your code yet, now's a great time to try.

To the loyal Perl::Critic users, what's the nastiest bug Perl::Critic found for you? Let me know in the comments.