local *CORE::GLOBAL::die = sub (@) { die scalar(localtime()), ' ', @_; }; #### $ perl -e'local *CORE::GLOBAL::die = sub (@) {CORE::die(scalar(localtime()), " ", @_);}; die "Foo!"' Foo! at -e line 1. $ #### $ perl -e'print prototype "CORE::die"' @$ #### BEGIN { *CORE::GLOBAL::warn = sub (@) { CORE::warn(scalar(localtime), " ", @_); }; warn "Foo!"; } BEGIN { *CORE::GLOBAL::warn = sub (@) { CORE::warn( @_); }; } warn "Bar!"' __END__ Foo! at -e line 1. Bar! at -e line 1.