I think a better choice here is `String(ex.stack || ex)` because thrown things may not have a stack (also across platforms).