2
0
mirror of https://github.com/boostorg/website.git synced 2026-01-19 04:42:17 +00:00

Add second Unordered patch for 1.80.0

This commit is contained in:
Glen Fernandes
2022-12-14 01:51:47 -05:00
parent e7be02410f
commit 05cef10d5f
3 changed files with 22 additions and 0 deletions

View File

@@ -38,6 +38,8 @@ in the release.
* Unordered
* Containers are not in a valid state after moving, see [github unordered 139].
[@/patches/1_80_0/0003-unordered-valid-after-move.patch Patch].
* Fix MSVC /RTCc build runtime failures.
[@/patches/1_80_0/0006-unordered-msvc-rtcc.patch Patch].
[endsect]

View File

@@ -0,0 +1,19 @@
diff -ur boost_1_80_0/boost/unordered/detail/prime_fmod.hpp boost_1_80_1/boost/unordered/detail/prime_fmod.hpp
--- boost_1_80_0/boost/unordered/detail/prime_fmod.hpp 2022-08-03 22:47:16.000000000 -0400
+++ boost_1_80_1/boost/unordered/detail/prime_fmod.hpp 2022-12-14 01:45:27.368620146 -0500
@@ -117,9 +117,15 @@
#if defined(BOOST_UNORDERED_FCA_HAS_64B_SIZE_T)
std::size_t sizes_under_32bit = inv_sizes32_len;
if (BOOST_LIKELY(size_index < sizes_under_32bit)) {
+#if defined(__MSVC_RUNTIME_CHECKS)
+ return fast_modulo(
+ boost::uint32_t(hash & 0xffffffffu) + boost::uint32_t(hash >> 32),
+ inv_sizes32[size_index], boost::uint32_t(sizes[size_index]));
+#else
return fast_modulo(
boost::uint32_t(hash) + boost::uint32_t(hash >> 32),
inv_sizes32[size_index], boost::uint32_t(sizes[size_index]));
+#endif
} else {
return positions[size_index - sizes_under_32bit](hash);
}

View File

@@ -41,6 +41,7 @@ https://www.boost.org/development/website_updating.html
<li><a href="1_80_0/0003-unordered-valid-after-move.patch">0003-unordered-valid-after-move.patch</a></li>
<li><a href="1_80_0/0004-filesystem-posix-fix-no-at-apis-missing-include.patch">0004-filesystem-posix-fix-no-at-apis-missing-include.patch</a></li>
<li><a href="1_80_0/0005-config-libcpp15.patch">0005-config-libcpp15.patch</a></li>
<li><a href="1_80_0/0006-unordered-msvc-rtcc.patch">0006-unordered-msvc-rtcc.patch</a></li>
</ul>
<h2>1.79.0</h2>