Commit Graph

231 Commits

Author SHA1 Message Date
Peter Dimov
f26dfd3dd7 Add error_code comparisons against standard error condition enums (to resolve the ambiguity when an enum is both standard and ours) 2021-06-15 01:52:32 +03:00
Peter Dimov
8efb96350f Clang 6 needs more help with mixed comparisons 2021-06-14 14:44:07 +03:00
Peter Dimov
88a7be42b5 Update Clang version check 2021-06-14 14:38:26 +03:00
Peter Dimov
a3225e78e2 Update GCC version check 2021-06-14 14:35:50 +03:00
Peter Dimov
9fdfa6c645 Move code == condition comparisons into error_code, unwrap std::error_code when needed 2021-06-14 04:06:24 +03:00
Peter Dimov
42a257e17c Add operator<< for error_condition 2021-06-14 03:59:44 +03:00
Peter Dimov
70b5449e99 Resolve ambiguity for std::error_code == boost::system::error_code 2021-06-14 03:53:00 +03:00
Peter Dimov
8043ce0278 Resolve ambiguity for std::error_code == boost::system::error_condition 2021-06-14 03:42:50 +03:00
Peter Dimov
2e707ca921 Disable -Wstrict-aliasing on g++ 6, really 2021-06-14 02:50:31 +03:00
Peter Dimov
a6c4b6329c Add a deleted T const& conversion for clang-6 and earlier 2021-06-14 02:35:48 +03:00
Peter Dimov
5b1909eba4 Disable -Wstrict-aliasing on g++ 6 and below 2021-06-14 02:15:37 +03:00
Peter Dimov
9dc13fd82a Change value() when holding std::error_code 2021-06-14 02:09:31 +03:00
Peter Dimov
e9cdb10409 Use std::hash<std::error_code> in hash_value 2021-06-14 01:51:33 +03:00
Peter Dimov
e625bd0eea Do not access d2_ when <system_error> isn't available; use std::error_code comparisons in op== and op< 2021-06-13 22:48:31 +03:00
Peter Dimov
66656f7044 Use copy-init instead of direct-init for older clangs 2021-06-13 20:45:50 +03:00
Peter Dimov
0d8511f571 Use reinterpret_cast to pointer instead of to reference 2021-06-13 20:40:27 +03:00
Peter Dimov
344eb1e1f8 Rework error_code for better std interop 2021-06-13 19:47:37 +03:00
Peter Dimov
20b8e90dff Add detail/snprintf.hpp 2021-06-13 18:58:50 +03:00
Peter Dimov
f8ab3df822 Initialize failed_ in the other two constructors 2021-06-13 05:05:31 +03:00
Peter Dimov
610d5f3f78 Revert "Mark error_condition::failed, error_condition::message as deprecated; revert op bool"
This reverts commit 329e72fb92.
2021-06-13 04:56:18 +03:00
Peter Dimov
d019c1cdae Remove detail/is_generic_value.hpp 2021-06-12 22:01:16 +03:00
Peter Dimov
ff77d4c094 Do not call generic_category() in system_error_category 2021-06-12 21:59:22 +03:00
Peter Dimov
a21a3050a5 Use nullptr for &generic_category() in error_condition 2021-06-12 21:51:51 +03:00
Peter Dimov
08d62ac444 Restore Sun workaround 2021-06-12 05:42:03 +03:00
Peter Dimov
45e9dfeba9 Declare operator std::error_category as BOOST_SYMBOL_VISIBLE 2021-06-12 05:12:58 +03:00
Peter Dimov
7d9eb384c6 Make error_category comparisons inline friends, to avoid clang 'member call on mutable' constexpr errors 2021-06-12 04:52:21 +03:00
Peter Dimov
04bfb05b19 Improve the implementation of the std::category conversion 2021-06-12 04:29:13 +03:00
Peter Dimov
ff9bca96e3 Add boost/system.hpp 2021-06-11 21:15:17 +03:00
Andrey Semashev
344ea58a77 Added support for Windows error code ERROR_NOT_SUPPORTED.
The error code description reads as "The request is not supported," which
is close to POSIX ENOTSUP "Not supported" and matches MSVC standard library
implementation.
2021-05-29 00:55:40 +03:00
vahtis
fbf7f4a417 Define BOOST_SYSTEM_DEPRECATED for Oracle Developer Studio
Added Oracle Developer Studio specific define.
2021-03-22 15:38:27 +02:00
Peter Dimov
63a32cea9a Remove deprecation message from windows_error.hpp (closes #57) 2021-01-02 22:16:39 +02:00
Tanzinul Islam
516484a821 Define BOOST_SYSTEM_DEPRECATED for other compilers
Currently compilation fails with Oracle Developer Studio 12.6, for example:

    $ ./b2 toolset=sun threading=multi variant=debug link=static cxxflags=-std=c++11 --with-system
    ...
    "./boost/system/detail/error_condition.hpp", line 96: Error: BOOST_SYSTEM_DEPRECATED is not defined.
    "./boost/system/detail/error_condition.hpp", line 96: Error: No direct declarator preceding ""this function is slated for removal"".
    "./boost/system/detail/error_condition.hpp", line 96: Error: No direct declarator preceding "(".
2020-12-23 23:57:18 +00:00
Peter Dimov
329e72fb92 Mark error_condition::failed, error_condition::message as deprecated; revert op bool 2020-10-06 04:03:13 +03:00
Peter Dimov
6758690d2f Add BOOST_SYSTEM_DEPRECATED; mark deprecated categories 2020-10-06 03:42:00 +03:00
Peter Dimov
8f32183b63 Mark platform-specific error headers as deprecated; split tests 2020-10-06 03:21:38 +03:00
Peter Dimov
99db03ee96 Remove tab 2020-09-04 17:02:14 +03:00
Peter Dimov
2e1ae5bc7a Remove unnecessary includes 2020-08-28 15:20:13 +03:00
Peter Dimov
7236be0c58 Add errc_test2 2020-08-28 02:00:20 +03:00
Peter Dimov
776834b723 Rename std_interoperability.hpp to to_std_category.hpp, make it self-contained 2020-08-28 01:03:15 +03:00
Peter Dimov
7e2a02b16d Rename system_category_posix.hpp to is_generic_value.hpp 2020-08-27 17:31:52 +03:00
Peter Dimov
b7e3be2798 Add system_category.hpp 2020-08-27 17:22:24 +03:00
Peter Dimov
e919caa2b4 Add generic_category.hpp 2020-08-27 16:35:32 +03:00
Peter Dimov
b951517625 Move system_category implementation to system_category_impl.hpp 2020-08-27 16:25:34 +03:00
Peter Dimov
ff18f28684 Move make_ functions for errc to errc.hpp 2020-08-27 16:15:10 +03:00
Peter Dimov
96321beb88 Add error_condition.hpp 2020-08-27 15:45:07 +03:00
Peter Dimov
313982fa52 Move interoperability support to error_category_impl.hpp 2020-08-27 15:14:17 +03:00
Peter Dimov
cc2b081a9e Add boost/system/error_category.hpp 2020-08-27 03:38:30 +03:00
Peter Dimov
a93572ab16 Extract error_category implementation into its own header 2020-08-27 03:23:00 +03:00
Peter Dimov
cc49bc4457 Extract throws into its own header 2020-08-27 03:06:14 +03:00
Peter Dimov
6bc7edbfa8 Rename generic_category_impl.hpp to generic_category_message.hpp 2020-08-27 02:59:30 +03:00