Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Re: Re: Less-than-helpful warnings

by jpfarmer (Pilgrim)
on Dec 11, 2003 at 17:46 UTC ( #314095=note: print w/replies, xml ) Need Help??

in reply to Re: Less-than-helpful warnings
in thread Less-than-helpful warnings

according to the message I get when I use the 'use diagnostics' with this code.

Since Sprad was looking for better messages "for warnings like these", I think it's worthwhile to emphasize the use diagnostics pragma Sandy mentioned.

Consider this trivial case:

#!/usr/bin/perl -w my $a = 1; my $c = 2; print $a + c;

Without using diagnostics, I get this:

Unquoted string "c" may clash with future reserved word at line 5.
Argument "c" isn't numeric in addition (+) at line 5.

However, if I do use it, I get a much more informative error:

Unquoted string "c" may clash with future reserved word at line 5 (#1)

    (W reserved) You used a bareword that might someday be claimed as a reserved word.
    It's best to put such a word in quotes, or capitalize it somehow, or insert
    an underbar into it.  You might also declare it as a subroutine.

Argument "c" isn't numeric in addition (+) at line 5 (#2)

    (W numeric) The indicated string was fed as an argument to an operator that
    expected a numeric value instead.  If you're fortunate the message
    will identify which operator was so unfortunate.

Sure, in the case I've provided it isn't especially helpful, but it can be useful for tracking down more bizarre errors by giving some suggestions.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://314095]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (11)
As of 2018-02-21 15:26 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (282 votes). Check out past polls.