v2.2.7 Boost 1.83 release
v2.2.7 13th August 2023 (Boost 1.83) [release]
Enhancements:
-
Update the list of known compiler issues in the docs.
-
Update Outcome.Experimental to match latest changes requested of
status_code
by WG21.
This as usual will cause minor breakage due to LEWG renaming of things. -
Outcome previously took addresses of things not using
std::addressof()
, and until now
nobody complained because customoperator&
which doesn't return an address is an
abomination not used in much modern C++. But finally someone did complain, so
for both normal Outcome and Experimental.Outcome, if you setOUTCOME_USE_STD_ADDRESSOF = 1
,
Outcome will usestd::addressof()
Bug fixes:
- Changes to other Boost libraries had caused Boost.Outcome's test suite to fail to compile for some
compiler and C++ language configurations in recent releases. Thanks to work contributed by @alandefreitas
and @pdimov, Boost.Outcome now CI tests a wide range of compilers and configurations and it
is believed all those corner case issues have been fixed or worked around, for the compilers
and configurations within that CI matrix.
Standalone Outcome's test suite was never affected, as it did not have Boost changing underneath it.
Nevertheless, a few of the compiler parse bug workarounds will have improved compatibility there
too for atyical toolchain choices.
- Experimental.Outcome now supports big endian architectures. Implementation for them simply wasn't done
before under the assumption that nobody would be using Experimental.Outcome on big endian architectures.
Turns out that was a wrong assumption!
Use the 'all-sources' tarball below, NOT the github generated one which is missing dependencies: