diff --git a/feed/history/boost_1_83_0.qbk b/feed/history/boost_1_83_0.qbk index 2c8120bd..9070d3b4 100644 --- a/feed/history/boost_1_83_0.qbk +++ b/feed/history/boost_1_83_0.qbk @@ -28,6 +28,10 @@ in the release. * Compilation on Windows ARM platforms may fail for missing intrinsics, see [github json 926] and [github json 927]. [@https://github.com/boostorg/json/commit/c4ce8509d015a0b75cfa9d36609b8409821a9c86.patch Patch]. +* Unordered + * Fix erroneous copy assigment operator that would destroy non-existent elements, see [github unordered 205]. + [@patches/1_83_0/0001-unordered-fix-copy-assign.patch Patch]. + [endsect] [section New Libraries] diff --git a/patches/1_83_0/0001-unordered-fix-copy-assign.patch b/patches/1_83_0/0001-unordered-fix-copy-assign.patch new file mode 100644 index 00000000..809197f8 --- /dev/null +++ b/patches/1_83_0/0001-unordered-fix-copy-assign.patch @@ -0,0 +1,16 @@ +diff --git a/include/boost/unordered/detail/foa/core.hpp b/include/boost/unordered/detail/foa/core.hpp +index 239d05d3..7ae9f2c8 100644 +--- a/include/boost/unordered/detail/foa/core.hpp ++++ b/include/boost/unordered/detail/foa/core.hpp +@@ -1870,9 +1870,10 @@ private: + + void fast_copy_elements_from(const table_core& x) + { +- if(arrays.elements){ ++ if(arrays.elements&&x.arrays.elements){ + copy_elements_array_from(x); + copy_groups_array_from(x); ++ size_ctrl.ml=std::size_t(x.size_ctrl.ml); + size_ctrl.size=std::size_t(x.size_ctrl.size); + } + } diff --git a/patches/index.html b/patches/index.html index 46118aed..27102e17 100644 --- a/patches/index.html +++ b/patches/index.html @@ -33,6 +33,12 @@ https://www.boost.org/development/website_updating.html late to be fixed in the release. Be careful as they have not been through the normal testing process.

+

1.83.0

+ + +

1.82.0