in reply to How "safe" is die() in %SIG?

You mean $SIG{__DIE__}? That's not actually a real signal handler. So die() is very safe.

What isn't safe is asynchronous signal handlers, those that can be invoked wherever your script is at, even in the middle of executing another, non-reentrant action. die()is executed synchronously, so it's very safe indeed.