1
0
forked from boostorg/core
Commit Graph

568 Commits

Author SHA1 Message Date
Peter Dimov 39cf1e65a3 Add BOOST_CORE_ALIGNOF 2023-01-25 20:10:31 +02:00
Peter Dimov c4777c309e Avoid including <new> in core/launder.hpp when not C++17 2023-01-24 18:54:45 +02:00
Peter Dimov 2b3b97c633 Add boost::core::launder 2023-01-24 17:50:45 +02:00
Peter Dimov ab455ab2f8 Disable -Wdeprecated-declarations for early clang-cl 2023-01-23 05:24:28 +02:00
Peter Dimov d8cfc71073 lwt_unattended: disable WER dialog box on crash 2023-01-19 02:35:15 +02:00
Andrey Semashev 0890785fec Added #pragma once in swap.hpp. 2023-01-07 03:52:46 +03:00
Andrey Semashev 8a8738a981 Propagate noexcept specification in boost::swap.
Mark boost::swap noexcept if the type supports non-throwing swap
implementation.
2023-01-07 03:42:15 +03:00
Andrey Semashev 99f9654f18 Fixed incorrect preprocessor condition for ref_empty definition.
Closes https://github.com/boostorg/core/pull/137.
2023-01-07 01:06:41 +03:00
Andrey Semashev 1e84baeea3 Use defaulted template arguments to restrict boost::ref converting ctor. 2023-01-06 19:38:55 +03:00
Andrey Semashev 1825265014 Marked boost::ref methods and associated functions with noexcept. 2023-01-06 19:12:47 +03:00
Peter Dimov 6299da9273 Add boost::core::lwt_init() 2022-12-30 21:17:58 +02:00
Peter Dimov 843e0f7bb0 Add boost::core::detail::lwt_unattended() 2022-12-28 17:49:01 +02:00
Andrey Semashev 86bf1d4aec Deprecated boost::core::is_same and the associated header.
Moved is_same implementation to detail (both directory and namespace)
to use in the public headers and avoid introducing new dependencies.
The documentation now recommends users to use Boost.TypeTraits or
C++ standard library instead.

Also, removed unnecessary includes and added missing ones in a few
places.
2022-12-22 17:55:47 +03:00
Glen Fernandes 2286749f97 Change order of restoration of warning disables in allocator access 2022-12-15 01:08:51 -05:00
Andrey Semashev d428335758 Remove the use of snprintf for trivial formatting.
This implements in-place formatting for small hex numbers instead of
using snprintf with the associated portability scaffolding. This also
removes the need for #include <cstdio>.
2022-12-09 04:15:02 +03:00
Andrey Semashev be8790115c Added portable snprintf/vsnprintf definition.
This definitions is mostly a workaround for older MSVC versions that only
provided non-portable _snprintf etc. that are not fully conforming to
the standard snprintf. This implementation fixes its issues wrt. null
termination and returned values in case of buffer overflows.

On platforms that support the standard snprintf, the definitions in
the header are equivalent to the standard functions.
2022-12-09 03:53:01 +03:00
Peter Dimov 2778c5cca6 Rename BOOST_CORE_SNPRINTF to BOOST_CORE_DETAIL_SNPRINTF 2022-12-07 22:33:17 +02:00
Matt Borland d5b7c3c0dc Add snprintf macro 2022-12-06 08:11:22 -08:00
Matt Borland db916e4673 Correct test macro and add undef 2022-12-06 08:10:14 -08:00
Matt Borland 3eaba7afc0 Fix for sprintf deprecation warning 2022-12-05 20:34:46 -08:00
Peter Dimov b407b5d87d Change bit_width to return int, LWG3656 has been applied as a DR to C++20 2022-09-22 01:31:01 +03:00
Peter Dimov 013c7856ce Merge branch 'develop' into feature/bit 2022-09-21 21:41:43 +03:00
Peter Dimov 66a742f41e Statically assert the unsigned integer requirements in bit.hpp. Fixes #129. 2022-09-21 19:19:02 +03:00
Andrey Semashev 00f4f11f14 Added a check for NULL pointer in fclose_deleter.
The deleter can be called on a null pointer by shared_ptr.

Also added tests with unique_ptr from Boost.Move and shared_ptr
from Boost.SmartPtr.
2022-09-21 18:09:42 +03:00
Andrey Semashev 3510f6244b Added fclose_deleter.
fclose_deleter can be used as a deleter function object for std::FILE
pointers returned by std::fopen.
2022-09-21 13:50:22 +03:00
Peter Dimov 1fa592c9ec Add a deleted constructor from nullptr_t to string_view; closes #113 2022-09-18 13:53:55 +03:00
Glen Fernandes e3745b2072 Add constexpr support to empty_value 2022-08-06 21:20:55 -04:00
Glen Fernandes 7100c05490 In C++03 use rebind<U>::other instead of rebind<U> 2022-07-17 10:06:51 -04:00
Peter Dimov b6c3190468 Add tn_holder specializations for __int128 (avoids macOS link errors for missing typeinfo for same) 2022-05-30 04:03:18 +03:00
Peter Dimov 8645bcb06e Merge pull request #101 from boostorg/feature/bit_use_if_constexpr
bit.hpp: Use C++17 if constexpr where possible
2022-05-14 04:35:13 +03:00
Glen Fernandes 42ed795866 Remove inline friend begin and end functions 2022-05-13 18:26:08 -04:00
Peter Dimov 0212774324 Avoid -Wshadow warning under g++ 4.8 2022-04-29 02:43:37 +03:00
Peter Dimov 0011697492 Add hash_value (refs #110) 2022-04-28 20:42:48 +03:00
Glen Fernandes d74140983d Correct definition of C++11 alias rebind 2022-04-26 14:11:31 -04:00
Yichen Wang 44610b65ba Fix typo 2022-04-19 15:26:36 +08:00
Glen Fernandes 5e0ff1680f Use a different workaround for supporting noinit_adaptor in C++03 2022-03-15 14:47:39 -04:00
Glen Fernandes 4defdfd233 Add allocator_construct_n to allocator_access and deprecate alloc_construct 2022-03-12 10:45:05 -05:00
Glen Fernandes c4deb479fd Add detection support for single argument construct and destroy 2022-03-12 01:31:31 -05:00
Peter Dimov 230dd83002 Add newlines, fflush 2022-02-15 06:49:46 +02:00
Peter Dimov 188ca25bf3 Mark verbose_terminate_handler as inline 2022-02-15 06:49:46 +02:00
Peter Dimov ed84fc4e23 Document verbose_terminate_handler 2022-02-15 06:49:46 +02:00
Peter Dimov 622b7a398a Add core/verbose_terminate_handler.hpp 2022-02-15 06:49:46 +02:00
Peter Dimov b7c987f83c Mark quick_exit as inline 2022-02-15 02:08:30 +02:00
Peter Dimov ad63dcda9f Fix -Wlong-long warnings in splitmix64.hpp 2022-02-08 22:49:44 +02:00
Peter Dimov cf619432a7 Fix GCC -Wlong-long warnings 2022-02-08 22:00:42 +02:00
Peter Dimov bae7c049b0 Avoid conversion warning in bit_width 2022-01-19 17:20:39 +02:00
Andrey Semashev 6ae6ff79f1 Deprecated boost/iterator.hpp, emit warnings on inclusion.
The header defines boost::iterator template, which is an alias for
std::iterator, which is itself deprecated since C++17.

Updated test to avoid testing the definition in C++17 onwards
to avoid failures due to deprecation warnings from libc++-13.
2021-12-23 16:46:29 +03:00
Peter Dimov df3b9827cf Enclose std::min in parentheses to guard against <windows.h> 2021-12-20 01:35:55 +02:00
Peter Dimov 574c7cf86e Update string_view.hpp to use BOOST_NO_CXX20_HDR_CONCEPTS 2021-12-18 18:39:03 +02:00
Peter Dimov 95f2a76c90 Specialize std::basic_common_reference to enable std::common_reference and std::common_reference_with 2021-12-18 07:43:33 +02:00