in reply to Re: Re: How to get die() to stop printing a line number?
in thread How to get die() to stop printing a line number?

Well, assuming you print the name of the file that failed to open in the error message, a simple grep on the file name would find its declaration immediately - which got to be faster than first going to the line number, and then grepping for the variable name. (vi +/filename/ program.pl)

Depending on your preference, you might be right about the SQL query (I usually write modules with just a handful of related queries in the same file, which would then be relatively small, so there's hardly any searching needed). But I was arguing against the sentiment one should always have to have the line number in a die message. The fact that there are cases where you might want to have the line numbers doesn't dispute that.

Abigail

  • Comment on Re: How to get die() to stop printing a line number?

Replies are listed 'Best First'.
Re: Re: How to get die() to stop printing a line number?
by cfreak (Chaplain) on Jul 02, 2003 at 15:04 UTC

    Well I think we can both agree that it comes down to a matter of personal preference. I didn't mean to imply with my original post that there would never be a reason to not show a line number, rather the original poster seemed to want to just exit his program with no output, which is what exit is for, where as die indicates some kind of error occured.

    Update: Why on earth was this modded down? Its not a flame and I don't believe that it is wrong either.

    Lobster Aliens Are attacking the world!
      Actually, a die() is quite different from an exit(), even you don't generate output with die(). If you want something equivalent, you'd need to do:
      exit $! ? $! : ($? >> 8) ? ($? >> 8) : 255;

      and pray $SIG{__DIE__} wasn't set, and that the code was not inside eval {}.

      Abigail