It looks/sounds to me like the
die handler i.e.
$SIG{__DIE__}, might be/is being modified in/by the
Foo constructor - which is, IMO, why your changes in the
use'ing code have no effect and
undef'ing the object clears the problem.
I would suggest either:
- Using a binary chop method commenting out chunks of Foo until such time as the problem goes away and then work backwards from there or...
- Find the minimal representative code that reproduces the problem
Then i.e having done either/both of the above, come back and ask again (by updating your node) - with any luck and a following wind, by that time, you might even have identified the problem for yourself.
A user level that continues to overstate my experience :-))