libstdc++: Fix deduction failure for std::min call [PR104080]
authorJonathan Wakely <jwakely@redhat.com>
Tue, 18 Jan 2022 09:46:16 +0000 (09:46 +0000)
committerJonathan Wakely <jwakely@redhat.com>
Tue, 18 Jan 2022 09:53:30 +0000 (09:53 +0000)
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
libstdc++-v3/src/c++17/fast_float/fast_float.h

index 97d2894..ee12930 100644 (file)
@@ -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;