Peter Dimov
0041cd9d9b
Split BOOST_TEST_TRAIT_SAME into its own header, rename to BOOST_TEST_SAME
2019-12-24 06:20:42 +02:00
Glen Fernandes
253b07f630
Add empty_init constant to documentation
2019-12-15 12:46:55 -05:00
Peter Dimov
e59271fdc2
Check BOOST_MSVC in addition to __cplusplus, because msvc doesn't define __cplusplus correctly
2019-12-02 02:15:55 +02:00
Nikita Kniazev
bc82adcd0b
Remove implementation specific handling
2019-12-02 01:11:04 +03:00
Nikita Kniazev
868cb07578
Try to include std::swap from the most lightweight header
...
Based on Boost.Move idea
2019-12-01 17:28:07 +03:00
Andrey Semashev
38f71361fb
Add a convenience instance of empty_init_t ( #65 )
...
* Added a convenience instance of empty_init_t.
Closes https://github.com/boostorg/core/issues/63 .
2019-11-23 21:00:59 -05:00
Peter Dimov
e38997be4d
Reorder conditions to support clang-cl
2019-10-11 16:43:48 +03:00
Glen Fernandes
e94af0d41a
Also define make_nvp in boost::serialization
2019-10-01 08:14:07 -04:00
Glen Fernandes
ac427ad64a
Define nvp inside boost::serialization and bring it into boost
2019-10-01 07:28:25 -04:00
Glen Fernandes
0591b1d855
Add BOOST_NVP convenience macro
2019-09-16 02:15:53 -04:00
Glen Fernandes
7cc1047ab7
Update NVP implementation, tests, docs
2019-09-15 21:12:16 -04:00
Glen Fernandes
f52dec58c2
Add a definition for nvp_bool
2019-09-10 08:04:40 -04:00
Glen Fernandes
26497003f2
Remove save and load helpers and update documentation for NVP
2019-09-04 21:47:39 -04:00
Glen Fernandes
7b8385afc3
Implement NVP in Core for Serialization and other libraries
2019-09-04 09:58:04 -04:00
Glen Fernandes
106a7c0939
Mark throw_exception BOOST_NORETURN
2019-08-27 07:28:28 -04:00
Peter Dimov
eba08e936a
Only return an 8 bit result from report_errors
2019-06-26 19:53:58 +03:00
Andrey Semashev
7e1d028958
Updated comment about QNX workaround in uncaught_exceptions.hpp.
2019-06-18 12:48:18 +03:00
Andrey Semashev
420dff80b5
Added a workaround for QNX in uncaught_exceptions.hpp.
...
QNX provides cxxabi.h from LLVM libc++abi, which does not declare
__cxa_get_globals but provides its implementation in the library.
To make things more fun, QNX developers commented _LIBCPPABI_VERSION
definition, which breaks detection of libc++abi in uncaught_exceptions.hpp.
There is also cxxabi.h from glibcxx that does provide __cxa_get_globals
declaration. We want to use that declaration, if possible, to avoid possible
mismatch in attributes.
This commit adds non-glibcxx cxxabi.h on QNX to the list of platforms that
need our declaration of __cxa_get_globals.
Fixes https://github.com/boostorg/core/issues/59 .
2019-06-13 15:38:43 +03:00
Glen Fernandes
4f141646b5
Add overloads for non-const lvalue reference
2019-05-19 23:48:11 -04:00
Glen Fernandes
29f281fe7a
Add alloc_construct overload for non-const lvalue reference
2019-05-19 21:14:23 -04:00
Glen Fernandes
ca832d9384
Implement first_scalar
2019-05-13 15:04:26 -04:00
Glen Fernandes
6b65cde816
Add alloc_construct_n overload for input iterators
2019-05-11 12:50:39 -04:00
Glen Fernandes
612069c7e4
Move construct and destroy from Smart_Ptr to Core
2019-05-03 08:54:09 -04:00
Glen Fernandes
ce05d650dc
Update documentation and conditionally include headers in noinit_adaptor.hpp
2019-05-02 07:43:55 -04:00
Glen Fernandes
a0e1100421
Add noinit_adapt() free function utility
2019-04-29 02:04:54 -04:00
Glen Fernandes
50491408b1
Implement noinit_allocator_adaptor
2019-04-28 02:10:37 -04:00
Glen Fernandes
62fff4d829
Update documentation for default_allocator
2019-04-27 19:11:45 -04:00
Glen Fernandes
151f2cf645
Support C++03 implementations that require reference and const_pointer
2019-04-27 06:15:24 -04:00
Glen Fernandes
5a549b8b22
Update max_size() implementation and tests
2019-04-25 13:05:06 -04:00
Glen Fernandes
e859d01186
Correct max_size() when PTRDIFF_MAX is less than SIZE_MAX
2019-04-25 12:11:34 -04:00
Glen Fernandes
69f7b0c76b
Update computation of max_size
2019-04-25 11:49:36 -04:00
Glen Fernandes
ba79489ea1
Remove null check in allocate
2019-04-25 02:32:31 -04:00
Glen Fernandes
9c88e5cbb1
Implement default_allocator
2019-04-25 02:22:45 -04:00
Peter Dimov
fb417474ae
Mark detail/sp_typeinfo.hpp as deprecated
2019-04-22 17:28:31 +03:00
Glen Fernandes
a78c25e4ab
Print type with cvref qualifiers
2019-04-20 03:04:06 -04:00
Hans Dembinski
02041f6c9f
report_errors with expected failures ( #51 )
...
* Return number of failures from report_errors
2019-04-19 23:55:50 -07:00
Peter Dimov
f14a464b29
Only disable C4127 on msvc-pre-14.0
2019-04-19 23:41:26 +03:00
Peter Dimov
af7e01b8c4
Merge branch 'no_exceptions_support-conditional-expression-is-constant' of https://github.com/Kojoley/core into feature/no-exceptions-support
2019-04-19 23:33:33 +03:00
Peter Dimov
40424bf0b6
Merge branch 'develop' into feature/no-exceptions-support
2019-04-19 23:28:02 +03:00
Peter Dimov
8d4c039f34
Remove unnecessary include
2019-04-19 23:27:37 +03:00
Peter Dimov
bb2e7e4c69
Add __clang__ to BOOST_NO_TYPEID comparison conditions
2019-04-19 20:13:41 +03:00
Andrey Semashev
0c5cff67b6
Corrected a typo in the comment.
2019-04-13 19:19:40 +03:00
Nikita Kniazev
8ac5b5b00e
no_exceptions_support: Suppress conditional expression is constant warning
2019-03-26 17:01:41 +03:00
Glen Fernandes
4ea704e80a
Add use_default to Core
2019-02-22 16:51:33 -05:00
Peter Dimov
7f96d56eff
Simplify implementation of BOOST_TEST_TRAIT_SAME
2019-02-06 04:38:27 +02:00
Peter Dimov
dcbe62c6bf
Add BOOST_TEST_TRAIT_SAME
2019-02-06 02:02:40 +02:00
Peter Dimov
d8895bab46
Mark checked_delete as noexcept
2019-01-28 19:15:24 +02:00
Andrey Semashev
7d70451b49
Updated the comment about __cxa_uncaught_exceptions.
2019-01-08 04:47:51 +03:00
Andrey Semashev
bf932b4908
Removed the use of __cxa_uncaught_exceptions.
...
Travis CI shows linking errors on Linux and OS X when __cxa_uncaught_exceptions
is used to implement uncaught_exceptions. There's probably some library missing,
which should be linked in implicitly by the compiler, or the library indeed
does not export the symbol. In any case, __cxa_get_globals-based implementation
should provide the same effect.
2019-01-08 04:17:24 +03:00
Andrey Semashev
dea6b04157
Added workarounds for gcc < 4.7 on Linux and OpenBSD.
...
Apparently, gcc < 4.7 on Linux also don't have __cxa_get_globals
declaration in cxxabi.h. Declare the function ourselves.
Also, on OpenBSD it seems there is no declaration either, and
on that platform the function implementation has no exception
specification, like on FreeBSD. Add a declaration of that platform.
Lastly, changed __cxa_get_globals and _getptd-based implementations
to avoid violating strict aliasing rules. This is still formally UB
to access structure fields like we do, but this is one less reason to
cause miscompilation or compiler warnings.
2019-01-08 00:23:09 +03:00