Skip to content

v2.2.7 Boost 1.83 release

Compare
Choose a tag to compare
@github-actions github-actions released this 13 Aug 12:03

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 custom operator& 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 set OUTCOME_USE_STD_ADDRESSOF = 1,
    Outcome will use std::addressof()

Bug fixes:

#273

  • 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: