Peter Dimov
|
b9c26b9fa0
|
Add detail::system_error_category_message, use it in error_code::message
|
2022-02-03 05:47:43 +02:00 |
|
Peter Dimov
|
2e2430c4fa
|
Add error_code::category_name helper, use it in to_string
|
2022-02-03 04:36:58 +02:00 |
|
Peter Dimov
|
4b1caad727
|
Avoid sign conversion warnings in error_code::value
|
2022-01-19 17:30:56 +02:00 |
|
Marcel Raad
|
86b031cab9
|
Fix error_code's operator<< for arbitrary basic_ostream specializations
This fixes a regression from commit
https://github.com/boostorg/system/commit/a9b64a888a24400cc2af9910a6ff88c3c4fd3210.
Calling `operator<<` with `std::string` only works for `std::ostream`.
Use `c_str()` to restore the previous behavior of using `const char*`,
which works for any `basic_ostream` specialization.
|
2021-12-21 13:17:26 +01:00 |
|
Peter Dimov
|
f78b036665
|
Update #if condition
|
2021-10-29 21:13:10 +03:00 |
|
Ed Catmur
|
9b0d735040
|
Add __attribute__((__format__)) to snprintf
This attribute will check format string bugs and is required for clean compile if -Wformat-nonliteral is enabled.
|
2021-10-29 11:59:03 +01:00 |
|
Peter Dimov
|
4ec1e54099
|
Enable error_code construction from enums specializing std::is_error_code_enum. Fixes #70.
|
2021-10-11 02:02:22 +03:00 |
|
Peter Dimov
|
eefcc5dcf6
|
Add error_code::what
|
2021-10-02 14:41:27 +03:00 |
|
Peter Dimov
|
0ccf08509b
|
Add a constructor taking ErrorCodeEnum and a source location
|
2021-10-01 23:04:04 +03:00 |
|
Peter Dimov
|
85c7d92302
|
Avoid instantiating the system category in error_code::operator std::error_code
|
2021-09-24 15:24:45 +03:00 |
|
Peter Dimov
|
1659dfbeba
|
Avoid instantiating generic_category in error_condition::operator std::error_condition
|
2021-09-24 04:27:08 +03:00 |
|
Peter Dimov
|
d2b8b54356
|
Do not use std::system_category under MinGW and g++ 4.x
|
2021-09-21 16:35:40 +03:00 |
|
Peter Dimov
|
41f7ea49cb
|
Do not use std::system_category under VS2013
|
2021-09-21 16:02:12 +03:00 |
|
Peter Dimov
|
ad66ea43a3
|
Revert addition of get_generic_std_category, get_system_std_category (they need this); do not use std::system_category on Cygwin
|
2021-09-21 15:45:00 +03:00 |
|
Peter Dimov
|
9b11d864be
|
Add helper functions get_generic_std_category, get_system_std_category
|
2021-09-21 15:01:44 +03:00 |
|
Peter Dimov
|
cc6a61b6c5
|
Convert system_category to std::system_category
|
2021-09-21 05:34:05 +03:00 |
|
Peter Dimov
|
60a20eeeb9
|
Retain old generic_category conversion behavior on g++ 4.8/4.9
|
2021-09-19 18:44:45 +03:00 |
|
Peter Dimov
|
b1dec88674
|
Convert generic_category to std::generic_category
|
2021-09-19 17:08:46 +03:00 |
|
Peter Dimov
|
5fd2535d9f
|
Excise generic_category() references from error_condition
|
2021-09-19 16:04:16 +03:00 |
|
Peter Dimov
|
e3f198e52c
|
Add error_condition::to_string
|
2021-09-19 15:37:49 +03:00 |
|
Peter Dimov
|
47137ad116
|
Change predefined error_category identifiers to be contiguous for better codegen
|
2021-09-19 15:04:51 +03:00 |
|
Peter Dimov
|
c02cd2b004
|
Add private error_code::equals, use it in error_category::equivalent
|
2021-09-19 05:24:08 +03:00 |
|
Peter Dimov
|
c8c5ad1ce5
|
Rework error_condition::op== to not require the generic_category() instance
|
2021-09-19 04:49:35 +03:00 |
|
Peter Dimov
|
984f8f1a92
|
Reorder constructor overloads
|
2021-09-16 18:04:27 +03:00 |
|
Peter Dimov
|
b507b2294e
|
Unbreak the loc == 0 case, even though the specification disallows it
|
2021-09-16 03:12:20 +03:00 |
|
Peter Dimov
|
3b70265ced
|
Rearrange error_code::failed to improve codegen
|
2021-09-15 16:42:47 +03:00 |
|
Peter Dimov
|
a65b91b3fb
|
Merge branch 'develop' into feature/source-location
|
2021-09-15 16:06:55 +03:00 |
|
Peter Dimov
|
5e642b1d43
|
Remove error_condition::failed_ in order to prioritise construction efficiency over failed() efficiency (latter is rare for conditions)
|
2021-09-15 14:54:26 +03:00 |
|
Peter Dimov
|
cd98f4edd7
|
Update system_error to incorporate the source location in what()
|
2021-09-15 07:42:57 +03:00 |
|
Peter Dimov
|
a9b64a888a
|
Add support for source_location to error_code
|
2021-09-15 07:03:18 +03:00 |
|
Peter Dimov
|
bb4b500cfc
|
Update Windows error mapping to match msvc-14.2 <system_error>
|
2021-09-08 00:48:55 +03:00 |
|
Marc Aldorasi
|
19e9f08666
|
Map ERROR_BROKEN_PIPE to errc_t::broken_pipe
|
2021-09-07 12:02:02 -04:00 |
|
Peter Dimov
|
39a19f3c90
|
Add constexpr to op== against error code enums
|
2021-06-16 03:06:11 +03:00 |
|
Peter Dimov
|
96cd1c0163
|
Add error_code comparisons against standard error code enums (to resolve the ambiguity when an enum is both standard and ours)
|
2021-06-15 02:17:26 +03:00 |
|
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 |
|