Commit Graph

516 Commits

Author SHA1 Message Date
Evan Miller
128d9314d6 Restore support for ancient Mac OS
Mac OS 10.4 and earlier lack Availability.h, causing compilation to
fail. Rearrange the macro logic to include Availability.h only if we
already think there may be support for uncaught exceptions.
2021-07-01 16:32:40 -04:00
Peter Dimov
012d96a72b Use non-const references in non-variadic branch as well 2021-06-10 10:09:46 +03:00
Peter Dimov
27d700ec01 Use non-const references in ignore_unused to avoid g++-11 warning 2021-06-10 09:54:51 +03:00
Glen Fernandes
ddbaa242a9 Update copyright comments 2021-02-16 02:14:14 -05:00
Glen Fernandes
86bff4c2d3 Revise allocator access utilities
Now supports MSVC 2013, and no workarounds use allocator_traits.
2021-02-15 22:11:41 -05:00
Peter Dimov
afba04cf7f Output non-printable chars as \xXY 2021-01-20 02:38:57 +02:00
Peter Dimov
2729beab83 Print char types as numeric values (C++20 deletes these ostream overloads) 2021-01-20 01:54:37 +02:00
Peter Dimov
fa82b680cf Work around clang++ 3.3 failure 2020-12-30 19:40:52 +02:00
Peter Dimov
16e9536146 Implement boost::core::endian 2020-12-29 02:41:15 +02:00
Peter Dimov
919b98d425 Use __builtin_popcount 2020-12-29 02:06:56 +02:00
Peter Dimov
e8aa0c75b4 Use _BitScanForward 2020-12-29 02:02:33 +02:00
Peter Dimov
8bd2239b0b Use __builtin_ctz 2020-12-29 01:56:34 +02:00
Peter Dimov
c838ebc003 Use _BitScanReverse 2020-12-29 01:53:30 +02:00
Peter Dimov
aca46fae91 Use __builtin_clz 2020-12-29 01:28:59 +02:00
Peter Dimov
409c809cd8 Add popcount 2020-12-29 01:06:22 +02:00
Peter Dimov
26728848b4 Add bit_ceil 2020-12-29 00:29:44 +02:00
Peter Dimov
cc877e6b5b Add countl_zero, countl_one 2020-12-28 23:40:59 +02:00
Peter Dimov
a47eebf41a Add countr_zero, countr_one 2020-12-28 21:52:02 +02:00
Peter Dimov
045487ba96 Add boost/core/bit.hpp (bit_cast, rotl, rotr) 2020-12-28 21:12:22 +02:00
Peter Dimov
bee040b8cc Add fpclassify. 2020-12-24 00:58:56 +02:00
Peter Dimov
c307f86520 Add core/cmath.hpp 2020-12-24 00:19:20 +02:00
Peter Dimov
72089753f7 Add Doxygen annotation 2020-11-21 18:18:31 +02:00
Peter Dimov
54671134ae Add implicit conversion between compatible reference wrappers (refs #83) 2020-11-19 18:57:56 +02:00
Andrey Semashev
dcc04c5508 Added a workaround for uncaught_exceptions for older Mac OS and iOS.
libc++ disables std::uncaught_exceptions for Mac OS < 10.12 and
iOS < 10.0, even though it defines __cpp_lib_uncaught_exceptions.

Fixes https://github.com/boostorg/core/issues/80.
2020-07-20 23:13:42 +03:00
Glen Fernandes
484487f958 MSVC2017 /std:c++17 warnings in allocator access 2020-07-17 09:30:00 -04:00
Andrey Semashev
503d035b7f Added a workaround for uncaught_exceptions on AIX with xlclang++.
The compiler provides cxxabi.h header but doesn't have __cxa_get_globals,
even in the ABI library. We have to disable __cxa_get_globals-based
implementation and fall back to std::uncaught_exception.

Fixes https://github.com/boostorg/core/issues/78.
2020-07-16 20:53:09 +03:00
Peter Dimov
f96fb31850 Rename lw_predicate_name to lwt_predicate_name 2020-06-06 22:53:20 +03:00
Peter Dimov
e155e13084 Change lw_name_traits to lw_predicate_name 2020-06-06 21:48:16 +03:00
Bjorn Reese
6e36923915 Added BOOST_TEST_WITH macro to verify test results with custom predicate 2020-06-06 18:52:43 +02:00
Glen Fernandes
376aa7aa31 Revise allocator_access implementation 2020-05-25 16:14:40 -04:00
Glen Fernandes
65901249d5 Workarounds for MSVC 2013 expression detection 2020-05-24 13:10:24 -04:00
Glen Fernandes
1c16d5ed87 Workaround for MSVC 2017 warning
MSVC provides deprecated members on allocator which we detect.
2020-05-24 10:48:36 -04:00
Glen Fernandes
27715ed01a Simplify alloc_construct using allocator_access 2020-05-24 02:45:11 -04:00
Glen Fernandes
9f2dbba2fc Workaround for MSVC 2015 expression SFINAE 2020-05-24 02:45:00 -04:00
Glen Fernandes
0159b6d8e5 Revise construction in allocator_access 2020-05-24 02:43:33 -04:00
Glen Fernandes
0dbd5aaadd Update empty_value constructors 2020-05-23 19:53:16 -04:00
Glen Fernandes
34373b0127 Avoid defining a macro in default_allocator 2020-05-23 15:28:10 -04:00
Glen Fernandes
6a33e879dd Simplify noinit_adaptor using allocator_access 2020-05-23 12:26:33 -04:00
Andrey Semashev
15db54983b Added a workaround for MSVC macro max. 2020-05-23 02:39:59 +03:00
Andrey Semashev
2b102e7357 Test the standard library rather than the compiler to select the standard header for std::swap. 2020-05-21 02:04:43 +03:00
Andrey Semashev
fb593cbbc8 Merge pull request #66 from Kojoley/add-deprecation-warnings
Add deprecation warnings for headers in detail dir
2020-05-08 13:56:33 +03:00
Edward Diener
6444de7098 Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers. 2020-05-08 11:41:04 +03:00
Glen Fernandes
e9ff763d79 Evaluate expression when BOOST_NO_EXCEPTIONS is defined 2020-05-02 09:34:29 -04:00
Glen Fernandes
3ca745f400 Add BOOST_TEST_NO_THROW and print expression in BOOST_TEST_THROWS 2020-05-01 14:34:02 -04:00
Glen Fernandes
12ff209bf7 Revise max_size implementation in default_allocator 2020-04-27 14:27:12 -04:00
Peter Dimov
bb0ef6d41e Disable variadic macros warning in lightweight_test_trait.hpp 2020-04-27 19:17:48 +03:00
Glen Fernandes
8fe9805792 Avoid C99 stdint macros in default_allocator 2020-04-26 19:49:01 -04:00
Glen Fernandes
c31e23b362 Implement allocator access utilities 2020-04-14 14:52:30 -04:00
Glen Fernandes
690514e87c Use BOOST_INLINE_CONSTEXPR in empty_value 2020-04-05 19:55:24 -04:00
Peter Dimov
5a5d2adda0 Go back to ::quick_exit, but include the correct <stdlib.h>; on Linux and Cygwin, quick_exit is not brought into std in C++03 mode 2020-03-23 15:54:23 +02:00