[committed,1/2] libstdc++: Fix deduction failure for std::min call [PR104080]

Message ID 20220118101220.3578219-1-jwakely@redhat.com
State Committed
Commit 97b9236976a4914d268089613d1fb42ece34aff9
Headers
Series [committed,1/2] libstdc++: Fix deduction failure for std::min call [PR104080] |

Commit Message

Jonathan Wakely Jan. 18, 2022, 10:12 a.m. UTC
  Tested x86_64-linux, pushed to trunk.
Reported upstream as https://github.com/fastfloat/fast_float/pull/122


libstdc++-v3/ChangeLog:

	PR libstdc++/104080
	* src/c++17/fast_float/LOCAL_PATCHES: UPDATE.
	* src/c++17/fast_float/fast_float.h (round): Use explicit
	template argument list for std::min.
---
 libstdc++-v3/src/c++17/fast_float/LOCAL_PATCHES | 1 +
 libstdc++-v3/src/c++17/fast_float/fast_float.h  | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
  

Patch

diff --git a/libstdc++-v3/src/c++17/fast_float/LOCAL_PATCHES b/libstdc++-v3/src/c++17/fast_float/LOCAL_PATCHES
index 71495d6728b..447c7ed2cdb 100644
--- a/libstdc++-v3/src/c++17/fast_float/LOCAL_PATCHES
+++ b/libstdc++-v3/src/c++17/fast_float/LOCAL_PATCHES
@@ -1,2 +1,3 @@ 
 r12-6647
 r12-6648
+r12-6664
diff --git a/libstdc++-v3/src/c++17/fast_float/fast_float.h b/libstdc++-v3/src/c++17/fast_float/fast_float.h
index 97d28940944..ee129309ba3 100644
--- a/libstdc++-v3/src/c++17/fast_float/fast_float.h
+++ b/libstdc++-v3/src/c++17/fast_float/fast_float.h
@@ -2466,7 +2466,7 @@  fastfloat_really_inline void round(adjusted_mantissa& am, callback cb) noexcept
   if (-am.power2 >= mantissa_shift) {
     // have a denormal float
     int32_t shift = -am.power2 + 1;
-    cb(am, std::min(shift, 64));
+    cb(am, std::min<int32_t>(shift, 64));
     // check for round-up: if rounding-nearest carried us to the hidden bit.
     am.power2 = (am.mantissa < (uint64_t(1) << binary_format<T>::mantissa_explicit_bits())) ? 0 : 1;
     return;