Chris, Thanks for your comments, I'm still trying to hone my perl abilities and I really appreciate your feedback. I certainly need help sometimes with my regular expressions...
A few comments: * No, this shouldn't go into UseParrotCoda. Separately enabled policies are more flexible.
Actually, I meant putting the UseParrotCoda under CodingStandards::, but as Will pointed out the shebang stuff would probably be better under TestingAndDebugging::.
* In fact, yours should probably be broken into two policies. Perhaps CodeStandards::ProhibitShebangWarningsArg and CodeStandards::RequirePortableShebang
That's a very good idea, and I thought of that, but didn't know if it was better to split things up than bunch together related tests.
* This would be a nice addition to core Perl::Critic!
Do you want me to supply a patch for Perl::Critic too, or will the file added to Parrot suffice?
* The -w catcher fails on "#!perl -T -w" or other variations on argument lists. Perhaps forbid any arguments at all?
Hadn't thought of "perl -T", and I'll update the patch accordingly; thanks :-). I also found that the -w catcher failed when I was testing my patch to resubmit, so again, I think I need to improve my regexp foo.
* The shebang line is always a PPI::Token::Comment and is always on the first line.
Using PPI::Token::Comment will simplify the test a lot more. I'll have a bit more of a play and see if I can get a better patch in. Thanks again for your feedback! Paul