Commit Graph

541 Commits

Author SHA1 Message Date
ec96129e9e Change aligned_storage::dummy::data to unsigned char[] 2022-02-18 21:55:13 +02:00
8e86559103 Fix convert-assign tests for C++98 2021-12-22 10:36:40 +01:00
56568445b9 Fix tests on C++03 2021-12-09 22:22:05 +01:00
7dd512a019 Fix issue #98 2021-11-20 02:00:30 +01:00
21253ea63a Merge pull request #93 from sdarwin/feature/gha_fix_1
Update GitHub Actions CI file
2021-08-03 16:07:09 +02:00
14d43d2e6e Update GitHub Actions CI file 2021-07-30 16:10:11 +00:00
0b159febf8 Update CMakeLists.txt 2021-06-10 00:53:07 +03:00
d0ab8004c0 Add support for BOOST_NO_IOSTREAM 2021-05-19 23:29:10 +02:00
a70c51eed1 Merge pull request #91 from sdarwin/githubactions
GitHub Actions config
2021-03-03 16:13:06 +01:00
9c9ff5e376 Add GitHub Actions config [ci skip] 2021-03-03 14:56:21 +00:00
708db7fe9a Merge pull request #88 from sdarwin/drone
Drone config
2021-01-21 21:18:22 +01:00
27971d8b11 add drone config [ci skip] 2021-01-21 19:42:29 +00:00
97da91f665 Merge pull request #89 from eldiener/develop
[skip ci] Add "cxxstd" json field
2021-01-21 19:50:03 +01:00
4a1a9c9cdd [skip ci] Add "cxxstd" json field. The "cxxstd" json field is being added to each Boost library's meta json information for libraries in order to specify the minumum C++ standard compilation level. The value of this field matches one of the values for 'cxxstd' in Boost.Build. The purpose of doing this is to provide information for the Boost website documentation for each library which will specify the minimum C++ standard compilation that an end-user must employ in order to use the particular library. This will aid end-users who want to know if they can successfully use a Boost library based on their C++ compiler's compilation level, without having to search the library's documentation to find this out. 2021-01-20 23:02:52 -05:00
71feb7961b Merge branch 'gieseanw-patch-1' into develop 2020-12-19 00:00:58 +01:00
ead529af54 Address unreachable code warning
In MSVC optional<T&>::value() emits a warning C4702: unreachable code because throw_exception is marked BOOST_RETURN.
Otherwise the ternary code might have been preferable.
This change addresses the warning while preserving the functionality. It replicates optional<T>::value() for consistency.
2020-12-19 00:00:18 +01:00
a7f49cbec8 Merge branch 'citrusmoose-make_none_t_literal_type' into develop 2020-10-24 17:18:22 +02:00
7e0b8145b5 boost::none is constexpr-declared 2020-10-24 17:17:10 +02:00
2b08711ec6 Merge branch 'make_none_t_literal_type' of https://github.com/citrusmoose/optional into citrusmoose-make_none_t_literal_type 2020-10-24 17:05:51 +02:00
88e7d55bbc Merge pull request #85 from giomasce-throwaway/develop
Fix funny mistake in copyright headers.
2020-10-09 16:28:33 +02:00
9de55e6ffd Fix funny mistake in copyright headers. 2020-10-09 15:35:58 +02:00
409a225afe Merge pull request #84 from mbs-c/develop
Add explicit <string> include to make tests compile with MSVC
2020-08-11 16:11:59 +02:00
db5e156ebc Add explicit <string> include to make tests compile with MSVC 2020-08-11 10:36:12 +02:00
aeac95857e Merge branch 'eldiener-develop' into develop 2020-05-07 18:06:07 +02:00
d5b7791710 Merge branch 'develop' of https://github.com/eldiener/optional into cppbuilder 2020-04-17 05:55:24 -04:00
19b94c01f3 added release notes 2020-04-09 01:12:22 +02:00
404f40bcc1 Merge branch 'RobertLeahy-develop' into develop 2020-04-06 00:43:05 +02:00
9b1f8033eb Merge branch 'develop' of https://github.com/RobertLeahy/optional-2 into RobertLeahy-develop 2020-04-06 00:42:05 +02:00
e52d7d4a9e Merge branch 'Kojoley-suppress-weak-vtables-warning' into develop 2020-04-05 23:47:19 +02:00
ed9edd54e4 Merge branch 'suppress-weak-vtables-warning' of https://github.com/Kojoley/optional into Kojoley-suppress-weak-vtables-warning 2020-04-05 23:30:40 +02:00
78d6563bce Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers. 2020-03-30 14:04:35 -04:00
d4a4a5b6ad fixed C++98-incompatible unit test 2020-01-16 22:31:23 +01:00
9581804efa GCC 4.4.7: boost::in_place & Assignment
Assigning a boost::in_place_factory to a boost::optional templated on a
type which was trivially copyable failed to compile under GCC 4.4.7.
2019-12-23 11:24:39 -05:00
d07ae78901 Tests Pass in GCC 4.4.7
Several tests either did not compile or failed upon running when using
GCC 4.4.7.
2019-12-23 11:24:39 -05:00
683dbe2412 .travis.yml: Specify Trusty for Trusty Addons
Previously .travis.yml didn't specify dist: trusty when using addons
which were specifically for Trusty. This led to the Clang 5 build
failing when trying to install Clang 5.
2019-12-23 11:24:39 -05:00
010ee00604 Update release notes 2019-12-20 00:30:37 +01:00
13bc27698e Add test case for fix to issue #78 2019-12-20 00:18:52 +01:00
0481b05d1f Merge branch 'cxx20_fix' of https://github.com/CaseyCarter/optional into CaseyCarter-cxx20_fix 2019-12-19 20:56:34 +01:00
4c863f5bf8 Merge branch 'master' into develop 2019-12-19 20:52:53 +01:00
9ed20cb085 Marked none instances as inline variables.
This should avoid duplicating none instances in all translation units.

Closes https://github.com/boostorg/optional/issues/33.
2019-12-19 20:22:16 +01:00
4fbb7582e1 Don't instantiate is_convertible_to_T_or_factory when is_optional_related
Fixes #78.
2019-12-18 17:51:51 -08:00
29dfc173c6 Merge pull request #71 from Mike-Devel/min_cmake
[CMake] Add minimal cmake support
2019-03-04 10:43:45 +01:00
f4d1107e86 [CMake] Add minimal cmake support
- CMake file only supports add_subdirectory workflow.
- Provides Boost::optional target,
  but no installation and no unit tests
2019-03-02 17:12:29 +01:00
324272fc0e Merge pull request #70 from Kojoley/patch-1
Fix unused argument warning
2019-02-27 21:22:08 -10:00
ee575b34c5 Fix unused argument warning
boost/optional/optional.hpp:970:5: warning: unused parameter 'rhs' [-Wunused-parameter]
2019-02-28 00:13:00 +03:00
a192204b41 Merge branch 'develop' optional-2018-11-08 boost-1.71.0 boost-1.70.0 boost-1.69.0 boost-1.73.0.beta1 boost-1.69.0-beta1 boost-1.72.0.beta1 boost-1.72.0 boost-1.71.0.beta1 boost-1.70.0.beta1 2018-11-08 18:49:34 +01:00
545fd9a72f docs and tests fixes 2018-11-08 18:46:03 +01:00
29b2dae630 Merge branch 'Lastique-fix_constructible_from_any' into develop 2018-11-05 18:18:05 +01:00
2f3cf1ca84 Added a test to verify that boost::optional copy constructor does not invoke T's template constructors. 2018-11-04 17:54:57 +03:00
24d29e5865 Fix for clang, when adapted type is convertible from other types.
The problem was with copy/move constructors of boost::optional<T>, which invoked
optional_base<T> constructors with a single argument. Since optional_base has
copy/move constructors along with initializing constructors taking a single
argument, the latter may be considered by the compiler for viability. While
doing so, the compiler may instantiate the template constructor of T with
an argument of optional_base<T>, which in turn may fail if the constructor
attempts to inspect the type of its argument (e.g. to constrain the set of
acceptable types). Specifically, this happens with clang in C++03 mode,
when boost::multiprecision::number is wrapped in boost::optional and
a copy constructor of boost::optional is invoked.

This commit fixes the problem by destinguishing copy/move constructors of
optional_base from initializing constructors with an additional tag argument.
2018-11-04 17:35:10 +03:00