blob: cd79ebcc34dd983a6b40954c0276b423668395a7 [file] [log] [blame]
William A. Kennington III2f210732020-08-02 16:12:36 -07001#include <stdplus/exception.hpp>
2
William A. Kennington III9a70f4e2021-05-01 17:16:57 -07003// These will only be used if the compiler doesn't support them
Patrick Williams5e3b13f2021-08-28 14:43:46 -05004#if !__has_builtin(__builtin_LINE)
William A. Kennington III9a70f4e2021-05-01 17:16:57 -07005int __builtin_LINE()
6{
7 return -1;
8}
9const char* __builtin_FILE()
10{
11 return "<unknown>";
12}
13const char* __builtin_FUNCTION()
14{
15 return "<unknown>";
16}
Patrick Williams5e3b13f2021-08-28 14:43:46 -050017#endif
William A. Kennington III9a70f4e2021-05-01 17:16:57 -070018
William A. Kennington III2f210732020-08-02 16:12:36 -070019namespace stdplus
20{
21namespace exception
22{
23
24WouldBlock::WouldBlock(const char* what) :
25 std::system_error(std::make_error_code(std::errc::operation_would_block),
26 what)
Patrick Williamsd1984dd2023-05-10 16:12:44 -050027{}
William A. Kennington III2f210732020-08-02 16:12:36 -070028
29WouldBlock::WouldBlock(const std::string& what) :
30 std::system_error(std::make_error_code(std::errc::operation_would_block),
31 what)
Patrick Williamsd1984dd2023-05-10 16:12:44 -050032{}
William A. Kennington III2f210732020-08-02 16:12:36 -070033
34Eof::Eof(const char* what) :
35 std::system_error(std::make_error_code(std::errc::no_message_available),
36 what)
Patrick Williamsd1984dd2023-05-10 16:12:44 -050037{}
William A. Kennington III2f210732020-08-02 16:12:36 -070038
39Eof::Eof(const std::string& what) :
40 std::system_error(std::make_error_code(std::errc::no_message_available),
41 what)
Patrick Williamsd1984dd2023-05-10 16:12:44 -050042{}
William A. Kennington III2f210732020-08-02 16:12:36 -070043
44} // namespace exception
45} // namespace stdplus