diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2025-07-15 21:29:33 +0100 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2025-07-17 09:48:12 +0100 |
commit | f4932c59df387a505de69a5a1015a03caa4ccf08 (patch) | |
tree | b4c9fbb2faddebc811f4d0fb2445d2f466b0de9e | |
parent | d626debcb3717f18bf2ee88f4281b109b13e1181 (diff) | |
download | gcc-f4932c59df387a505de69a5a1015a03caa4ccf08.zip gcc-f4932c59df387a505de69a5a1015a03caa4ccf08.tar.gz gcc-f4932c59df387a505de69a5a1015a03caa4ccf08.tar.bz2 |
libstdc++: Use __promote_3 for std::hypot [PR121097]
The __promoted_t alias is only defined when __cpp_fold_expressions is
defined, which might not be the case for some hypothetical C++17
compilers.
Change the 3-arg std::hypot to just use __gnu_cxx::__promote_3 which is
always available.
libstdc++-v3/ChangeLog:
PR libstdc++/121097
* include/c_global/cmath (hypot): Use __promote_3 instead of
__promoted.
Reviewed-by: Tomasz KamiĆski <tkaminsk@redhat.com>
-rw-r--r-- | libstdc++-v3/include/c_global/cmath | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libstdc++-v3/include/c_global/cmath b/libstdc++-v3/include/c_global/cmath index 27c21ca..65a3b81 100644 --- a/libstdc++-v3/include/c_global/cmath +++ b/libstdc++-v3/include/c_global/cmath @@ -3792,10 +3792,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return std::__hypot3<long double>(__x, __y, __z); } template<typename _Tp, typename _Up, typename _Vp> - __gnu_cxx::__promoted_t<_Tp, _Up, _Vp> + typename __gnu_cxx::__promote_3<_Tp, _Up, _Vp>::__type hypot(_Tp __x, _Up __y, _Vp __z) { - using __type = __gnu_cxx::__promoted_t<_Tp, _Up, _Vp>; + using __type = typename __gnu_cxx::__promote_3<_Tp, _Up, _Vp>::__type; return std::__hypot3<__type>(__x, __y, __z); } |