blob: c9692953bd756711df86e30beef9913e7bcdf69f [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)
27{
28}
29
30WouldBlock::WouldBlock(const std::string& what) :
31 std::system_error(std::make_error_code(std::errc::operation_would_block),
32 what)
33{
34}
35
36Eof::Eof(const char* what) :
37 std::system_error(std::make_error_code(std::errc::no_message_available),
38 what)
39{
40}
41
42Eof::Eof(const std::string& what) :
43 std::system_error(std::make_error_code(std::errc::no_message_available),
44 what)
45{
46}
47
48} // namespace exception
49} // namespace stdplus