in reply to detecting $& usage

What about B::FindAmpersand? As per the docs it is A compiler backend to find variables that set sawampersand and it is used as follows: perl -MO=FindAmpersand file.pl

Sorry, I haven't tried it as it is not installed on my system and it needs some compiling, which is rather difficult without a C compiler :(

Neither have I been able to find a PPM package, so use it at your own risk, but it looks as if it could actually take a file and check it for the 'forbidden symbols'.

CountZero

"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law