Save $@ directly after eval {} lest POSIX::SigAction->new() alter its value; re-throw exception if $@ was not a SIGINT