266 Commits

Author SHA1 Message Date
Alan de Freitas 88e2378c8a Add -Wmaybe-uninitialized pragma to union storage constructors
GCC 7+ produces false-positive -Wmaybe-uninitialized warnings at -O3
when deeply inlining through union constructors that initialize one
member while another (dummy_) exists. This is the same class of false
positive addressed in boostorg/variant2#55.

The pragmas are placed around the forwarding constructors in both
constexpr_union_storage_t and fallback_union_storage_t.
2026-02-24 12:11:51 -05:00
Andrzej Krzemienski 5d8e50a9aa add conversion from optional T to optional ref T 2026-02-18 16:52:52 +01:00
Andrzej Krzemienski b2057c8dfe MSVC 14.1 fix -- 3rd attempt 2026-02-16 15:40:05 +01:00
Andrzej Krzemienski 1c13f5f724 MSVC 14.1 fix -- 2nd attempt 2026-02-16 13:20:03 +01:00
Andrzej Krzemienski aa1cf1e76c Work around the MSVC 14.1 bug 2026-02-16 01:13:53 +01:00
Andrzej Krzemienski 938502da88 fix bug with factories + conversions 2026-02-10 22:02:50 +01:00
Andrzej Krzemienski 046357ce54 Add more robust constexpr support 2026-02-10 19:30:11 +01:00
Andrzej Krzemienski dd0e9d8a72 temporarily disable the constexpr implementation 2026-02-07 13:56:40 +01:00
Andrzej Krzemienski c81b9b098b fix constexpr reset 2026-02-07 13:36:08 +01:00
Andrzej Krzemienski 7b078be18d demove deprecation warnings 2026-02-07 13:23:04 +01:00
Andrzej Krzemienski 3df23370e6 make optional constexpr in C++14 2026-02-07 02:12:24 +01:00
Andrzej Krzemienski 5e7fdf5ec5 Clean remnants of StaticAssert and mpl 2024-10-16 23:42:56 +02:00
Andrzej Krzemienski e601f1ef2d Drop dependency on Boost.StaticAssert 2024-10-16 23:31:33 +02:00
Andrzej Krzemienski b2c7f93ead Restore support for compilers without ref qualifiers 2024-10-16 22:51:06 +02:00
Ryan Malcolm Underwood c8bd18d6de refactor: update copyright, modify forward assert 2024-10-06 20:13:05 +01:00
typenameTea 7974207c7f refactor: make include guard more unique 2024-10-05 19:00:27 +01:00
typenameTea c33708c1f9 refactor: address code review comments 2024-10-05 12:47:10 +01:00
typenameTea cacde054df refactor: drop Boost.Move dependency
Implement constexpr definitions of forward and move to replace usage
of boost::move and boost::forward from the Boost.Move library.

Alter tests to use std::move instead of boost::move.

Remove the dependency on Boost.Move from build.jam
2024-09-28 17:18:00 +01:00
typenameTea ae15fc54b2 refactor: add back unified init syntax conditional 2024-09-19 22:14:24 +01:00
typenameTea dc7909db4a refactor: implementation tidy up
C++11 is now the library minimum requirement, so clean up the interface by
removing conditional compilation intended to support C++03 alongside C++11.
2024-09-18 22:08:58 +01:00
Andrzej Krzemienski cbfb66379b Tags in_place_init and in_place_init_if become inline constexpr 2024-09-13 16:22:40 +02:00
Alexander Grund 36c33f2e67 Fix ununsed parameter warning
The function returns false w/o using any parameter leading to a warning. Remove the name from the parameter
2024-08-16 10:37:12 +02:00
Andrzej Krzemienski 411ead088d Different implementation of map and flat_map 2024-08-15 21:41:17 +02:00
Andrzej Krzemienski e360de3da5 Header cleanup 2024-08-15 11:48:28 +02:00
Andrzej Krzemienski 346dc03746 Reimplement trivially semiregular trait 2024-08-15 11:42:42 +02:00
Andrzej Krzemienski 27309c40ad Drop unused traits 2024-08-15 11:13:44 +02:00
Andrzej Krzemienski 6ec468aff6 Drop explicit bool idiom 2024-08-15 10:57:03 +02:00
Andrzej Krzemienski 794e03af30 Drop dependency on Boost.Predef 2024-08-15 10:43:43 +02:00
Andrzej Krzemienski 3a8556186e Drop dependency on Boost.Utility 2024-08-15 08:49:21 +02:00
Andrzej Krzemienski 82d08adf11 Drop support for C++03 2024-08-15 01:48:31 +02:00
Andrzej Krzemienski b270cf019b revert launder fix
A better fix is now in boost::launder.
2024-01-04 08:29:06 +01:00
Andrzej Krzemienski 790d4f729f cleaner workaround for VS2017 launder bug 2024-01-04 02:03:33 +01:00
Andrzej Krzemienski 8375df7693 Fix MSVC 14.1 compiler crash 2024-01-03 22:20:28 +01:00
Andrzej Krzemienski 01e80d2b87 drop dependency on boost.detail 2024-01-03 21:41:26 +01:00
Andrzej Krzemienski e31cf6f2a8 Fix some -Wmaybe-uninitialized warnings 2023-12-29 01:40:01 +01:00
Peter Dimov e59b1bce1d Fix typo in none_t.hpp. Closes #115. 2023-11-09 00:38:43 +01:00
Andrzej Krzemienski a3abf04548 added deprecation message 2023-11-09 00:38:43 +01:00
Andrey Semashev def2db7c45 Switch to boost::core::invoke_swap.
boost::swap is deprecated and will be removed. Use boost::core::invoke_swap
as a replacement.
2023-11-09 00:38:43 +01:00
Josh Soref 246f1663e1 spelling: trivially
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 653ebefbac spelling: support
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 7e395f4520 spelling: screwed
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref cdc2bd8482 spelling: references
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 8ffb7e3f57 spelling: pointees
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref deda20af89 spelling: overloads
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 168552e021 spelling: msvc
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 56156dcc87 spelling: functions
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 9944804c5c spelling: doesn't
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref cc416b8989 spelling: deprecated
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref c4291fa461 spelling: compiler
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00
Josh Soref 9c44e402f6 spelling: because
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-07-11 00:39:13 +02:00