http://www.perlmonks.org?node_id=692302


in reply to Re^2: Run before exit
in thread Run before exit

(CORE::exit IIRC)

Use CORE::GLOBAL::exit() to override — CORE::exit() is the original exit builtin that you'd typically call from within your redefined exit routine...

Update: an example:

#!/usr/bin/perl BEGIN { *CORE::GLOBAL::exit = sub (;$) { print STDERR "in overridden exit(): @_\n"; CORE::exit(88); }; } exit 99;