Syntactic Confectionery Delight | |
PerlMonks |
RE: Re: use strictby KM (Priest) |
on Jun 07, 2000 at 19:31 UTC ( [id://16878]=note: print w/replies, xml ) | Need Help?? |
I'll take this a step further too and mention the diagnostics pragma (perldoc diagnostics). I don't think it is practical for production use, but can be helpful for new Perl folks when learning and finding that their code doesn't seem to work with -w all of a sudden :) The diagnostics pragma will give verbose warning messages (more verbose than the normal -w warnings). Here is an example:
When run, this will produce: Can't find string terminator '"' anywhere before EOF at ./test.pl line 3. Ok, this is an easy one to see the error :) I am using it for examples sake! Anyways, now, let's change the script to:
Now, this is what you would see:
Can't find string terminator '"' anywhere before EOF at ./test.pl line 4 (#1) (F) Perl strings can stretch over multiple lines. This message means that the closing delimiter was omitted. Because bracketed quotes count nesting levels, the following is missing its final parenthesis: print q(The character '(' starts a side comment.); If you're getting this error from a here-document, you may have included unseen whitespace before or after your closing tag. A good programmer's editor will have a way to help you find these characters. Uncaught exception from user code: Can't find string terminator '"' anywhere before EOF at ./test.pl line 4. Just an aside to hopefully help some folks learn
In Section
Seekers of Perl Wisdom
|
|