mirror of
https://github.com/gcc-mirror/gcc.git
synced 2026-05-06 14:59:39 +02:00
libstdc++: Fix std::numeric_limits<__float128>::max_digits10 [PR121374]
When I added this explicit specialization in r14-1433-gf150a084e25eaa I used the wrong value for the number of mantissa digits (I used 112 instead of 113). Then when I refactored it in r14-1582-g6261d10521f9fd I used the value calculated from the incorrect value (35 instead of 36). libstdc++-v3/ChangeLog: PR libstdc++/121374 * include/std/limits (numeric_limits<__float128>::max_digits10): Fix value. * testsuite/18_support/numeric_limits/128bit.cc: Check value.
This commit is contained in:
committed by
Jonathan Wakely
parent
889a1352a2
commit
cf88ed5bf2
@@ -2128,7 +2128,7 @@ __glibcxx_float_n(128)
|
||||
static _GLIBCXX_USE_CONSTEXPR int digits = 113;
|
||||
static _GLIBCXX_USE_CONSTEXPR int digits10 = 33;
|
||||
#if __cplusplus >= 201103L
|
||||
static constexpr int max_digits10 = 35;
|
||||
static constexpr int max_digits10 = 36;
|
||||
#endif
|
||||
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
|
||||
static _GLIBCXX_USE_CONSTEXPR bool is_integer = false;
|
||||
|
||||
@@ -4,6 +4,11 @@
|
||||
|
||||
#if __SIZEOF_FLOAT128__
|
||||
__extension__ template class std::numeric_limits<__float128>;
|
||||
|
||||
# if __cplusplus >= 201103L
|
||||
static_assert( std::numeric_limits<__float128>::max_digits10 == 36,
|
||||
"PR libstdc++/121374" );
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if __SIZEOF_INT128__
|
||||
|
||||
Reference in New Issue
Block a user