eval { do_something_that_might_die(); 1; } or do { my $error = $@ || 'Zombie error'; deal_w($error) || die; }