CC: | "avner [...] telus.net" <avner [...] telus.net> |
Subject: | bug-Exception-Class@rt.cpan.org |
Date: | Fri, 15 Apr 2011 16:56:19 -0700 |
To: | "bug-Exception-Class [...] rt.cpan.org" <bug-Exception-Class [...] rt.cpan.org> |
From: | Avner Moshkovitz <avnermoshkovitz [...] lighthauslogic.com> |
I don't know if this is a bug but I experienced problems when using the packages Exception::Class and Carp together
It seems that both packages compete to set the eval_error variable ($@)
For example, throwing an object type can result in the eval_error variable ($@) after the eval statement getting a scalar type if
the Carp is fast enough to set a string (of type scalar) that contains the error stack.
The result is that the catcher after the eval statement sees a different type than what it expects and does not react as planned.
I obsereved this problem on one machine while on a different machine with the identical packages, the type after the eval statement
was of subclass of Exception::Class as expected.
Confirmed that the following packages are identical on both machines
Exception::Class, Exception::Class::Base, Carp, Carp::Heavy, Carp::Always
Running on Linux Fedora Core 11
Carp.pm - Version 1.08
Exception::Class.pm - Version 1.32
Exception::Class::Base - Version 1.32
Carp::Always - Version 0.09
Regards,
Avi
This e-mail may contain information that is privileged, confidential or otherwise exempt from disclosure under applicable laws. Unauthorized use, reproduction or dissemination of the e-mail is strictly prohibited. If you have received this e-mail in error, please contact the sender immediately. [11EABB509DF]