in reply to Re^2: 5.10 shows uninitialized $@ warning
in thread 5.10 shows uninitialized $@ warning

Except I doubt your code snippet is representative of your actual code and thus of little use in the discussion. Reading through the discussion I kept getting confused as to where the problem lay. This is why we need code that is representative of your code and which demonstrates the problem.

First, can you verify that your current code runs without warning under 5.8 so that were sure some change didn't slip into the code? Next you're going to have to start paring things from your code until the warning goes away. I'm sorry we can't do this for you. You're going to have to be the one to do this. Once you find the offending bit of code then we can put more that one set of eyes on it and try to determine whether it is the code or whether something's not right in 5.10.

pmSwim writes:

"The code runs without a exception and no handler is called."
Are you sure? The warning is a runtime message. This appears to be confirmed in your latest code snippet as you have to issue warn $@ to generate the message.

I guess you could also sprinkle $@=''; throughout your code until the warning goes away.


s//----->\t/;$~="JAPH";s//\r<$~~/;{s|~$~-|-~$~|||s |-$~~|$~~-|||s,<$~~,<~$~,,s,~$~>,$~~>,, $|=1,select$,,$,,$,,1e-1;print;redo}
  • Comment on Re^3: 5.10 shows uninitialized $@ warning

Replies are listed 'Best First'.
Re^4: 5.10 shows uninitialized $@ warning
by pmSwim (Acolyte) on May 16, 2008 at 17:59 UTC
    Thanks starbolin, to fix the cause of the problem is for me the the best solution. Your doubts are right. Between my "global" sig `die` handler and the one shown was a place where I make
    local $SIG{'__DIE__'};
    As I removed this, the real error message occurs from "global" handler and was fixed easily.