boost::swaputility function has been renamed to
boost::core::invoke_swapto avoid forming a potential infinite recursion when the arguments are not swappable. The new function is defined in
boost/core/invoke_swap.hppand is functionally equivalent to
boost::swap. The old
boost::swapname is preserved for backward compatibility but deprecated and will be removed in a future release. Its
noexceptspecification has been removed to avoid compile errors caused by compile-time recursion.
BOOST_ALLOW_DEPRECATEDcan be defined to suppress deprecation warnings for the transition period. (#148)
boost/core/swap.hppare deprecated and will be removed. Please, switch to
BOOST_ALLOW_DEPRECATEDcan be defined to suppress deprecation warnings.
constexpron recent MSVC versions (VS2019 update 5 and later.)
boost::core::byteswap(an implementation of
std::byteswapfrom C++23) to
sp_thread_sleepfrom SmartPtr implementation details to
boost/core/snprintf.hppheader with portable definitions of
boost::core::is_same. The header will be removed in a future release. Users are advised to use Boost.TypeTraits or C++ standard library type traits instead.
boost::refmember functions and associated methods with
noexcept, depending on whether the type supports a non-throwing swap operation.
boost::core::launder, a portable implementation of
BOOST_CORE_ALIGNOF, a portable implementation of
boost::core::max_align_t, a portable equivalent of
boost::core::max_align, the alignment of
boost::core::memory_resource, a portable equivalent of
boost/core/serialization.hpp, a collection of primitives allowing libraries to implement Boost.Serialization support for their types without including a Serialization header and thereby making their libraries depend on Serialization.
boost::data, an implementation of
boost::size, an implementation of
boost::datawhich adds support for range construction from an
boost::identity, an implementation of
std::identity. This facility has been moved from Boost.Functional.
empty_valuemembers are now marked as
fclose_deleter, a deleter that calls
std::fcloseon a pointer to
boost/core/bit.hppnow explicitly require unsigned integers on input. (#129)
intinstead of a value of the input argument type. This follows the resolution of LWG3656.
boost/core/allocator_access.hpp, added detection of
destroymembers of an allocator.
boost/core/alloc_construct.hppheader is now deprecated and will be removed in a future release. Its functionality was moved to
boost/core/allocator_access.hpp. In particular, new methods
allocator_destroy_nwere added for allocating and destroying arrays.
spanin C++17 mode when Boost.Range headers were included. (#105, PR#115)
pointer_traits, pointer rebinding now supports C++03 compilers.
boost::allocator_traits, an implementation of
boost/iterator.hppis deprecated and will be removed in a future release. The header defines the
boost::iteratortemplate, which is equivalent to
<iterator>header. However, since
std::iteratoris itself deprecated in C++17, users are advised to remove the use of
std::iteratorfrom their code.
boost::core::verbose_terminate_handler, a utility function intended to be passed to
std::set_terminatethat prints information about the uncaught exception to
boost/core/cmath.hpp, enabled when
BOOST_CORE_USE_GENERIC_CMATHis defined or when the platform does not provide the necessary facilities in
boost::core::type_name, a utility function that returns the name of a type as a string.
boost::span, a C++11 implementation of C++20's
boost/core/uncaught_exceptions.hpphas been modified for compatibility with Mac OS 10.4 and older.
boost/core/cmath.hpp, a portable implementation of the floating point classification functions from
boost/core/bit.hpp, a portable implementation of the C++20 standard header
BOOST_TEST_NEfor character types under C++20.
allocator_traitswith individual traits and functions for each facility. They support the C++11 allocator model when possible and provide a fallback for C++98 compatibility.
BOOST_TEST_WITHto Lightweight Test.
<boost/core/alloc_construct.hpp>for allocator aware and exception safe construction and destruction of objects and arrays.
<boost/core/first_scalar.hpp>for obtaining a pointer to the first scalar element of an array. Given a pointer of type
T*they return a pointer of type
<boost/core/noinit_adaptor.hpp>which is an allocator adaptor that converts any allocator into one whose
construct(ptr)performs default initialization via placement
new, and whose
<boost/core/default_allocator.hpp>, which can serve as a minimal default allocator that has interface similar to C++20
std::allocator, supports configurations with disabled exceptions and does not have
stdas an associated namespace. The allocator uses
operator deletefor allocation.
<boost/core/uncaught_exceptions.hpp>header, added workarounds for better compatibility with QNX SDP 7.0 when libc++/libc++abi libraries are used.
<boost/detail/sp_typeinfo.hpp>header is now marked as deprecated and will be removed in a future release.
<boost/core/typeinfo.hpp>should be used instead.
boost::empty_value, for library authors to conveniently leverage the Empty Base Optimization to store objects of potentially empty types.
boost::quick_exitto provide the C++11 standard library facility
pointer_traitsto reflect the design adopted for C++20 in P0653R2.