Spaces:
Runtime error
Runtime error
| errno_exception::errno_exception(int errno) | |
| : _errno(errno) | |
| { | |
| } | |
| int errno_exception::errno() const | |
| { | |
| return _errno; | |
| } | |
| const char *errno_exception::what() | |
| { | |
| std::snprintf(_buf, sizeof _buf, "error: %s (%d)", | |
| std::strerror(_errno), _errno); | |
| return _buf; | |
| } | |
| int try_main(int (*main)(int argc, char** argv), int argc, char** argv, | |
| int ret_on_exception) | |
| { | |
| try { | |
| return main(argc, argv); | |
| } catch (std::exception& e) { | |
| std::fprintf(stderr, "exception: %s\n", e.what()); | |
| } catch (...) { | |
| std::fprintf(stderr, "unknown exception\n"); | |
| } | |
| return ret_on_exception; | |
| } | |