Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
Prev Up HomeNext


v2.1.1 XXth July 2019 (Boost 1.71) [release]


As per request from Boost release managers, relocated version.hpp and revision.hpp into detail, and added the Boost licence boilerplate to the top of every source file which was missing one (I think). Also took the opportunity to run the licence restamping script over all Outcome, so copyright dates are now up to date.
Add FAQ item explaining issue #185, and why we will do nothing to fix it right now.
Refactored the BOOST_OUTCOME_TRY implementation to use more clarified customisation points capable of accepting very foreign inputs. Removed the std::experimental::expected<T, E> specialisations, as those are no longer necessary. Fixed the documentation for the customisation points which previously claimed that they are ADL discovered, which they are not. Added a recipe describing how to add in support for foreign input types.
Added a separate motivation/plug_error_code specifically for Boost.

Bug fixes:

BOOST_OUTCOME_VERSION_MINOR hadn’t been updated to 1.
Fix issue #181 where Outcome didn’t actually implement the strong swap guarantee, despite being documented as doing so.
Fix issue #190 in Boost edition where unit test suite was not runnable from the Boost release distro.
Fix issue #182 where trait::is_exception_ptr_available<T> was always true, thus causing much weirdness, like not printing diagnostics and trying to feed everything to make_exception_ptr().
Fix issue #192 where the std::basic_outcome_failure_exception_from_error() was being defined twice for translation units which combine standalone and Boost Outcome’s.

v2.1 12th Apr 2019 (Boost 1.70) [release]

v2.0 18th Jan 2018 [release]

Last revised: June 25, 2019 at 17:01:21 +0100

Prev Up HomeNext