Subject: Re: [Boost-bugs] [Boost C++ Libraries] #13360: std::numeric_limits<multiprecision::float128> methods fail to compile in C++11 mode
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-12-27 10:45:48
#13360: std::numeric_limits<multiprecision::float128> methods fail to compile in
C++11 mode
-------------------------------+----------------------------
Reporter: b7.10110111@⦠| Owner: John Maddock
Type: Bugs | Status: new
Milestone: To Be Determined | Component: multiprecision
Version: Boost 1.66.0 | Severity: Regression
Resolution: | Keywords:
-------------------------------+----------------------------
Comment (by b7.10110111@â¦):
Not sure if this is the core problem, but what if we use the following
constructs instead of quad literals?
{{{
using ldlims=std::numeric_limits<long double>;
constexpr auto max=__float128(ldlims::max())+
__float128(0x1.ffffffffffffp+16383L)*0x1.p-64;
constexpr auto min=__float128(ldlims::min());
constexpr auto denorm_min=__float128(ldlims::denorm_min())*0x1.p-49;
constexpr auto epsilon=__float128(ldlims::epsilon())*0x1.p-49;
}}}
These compile and work perfectly well with GCC (one of them,
{{{denorm_min}}}, wasn't even implemented in boost, but is also doable, as
shown above).
-- Ticket URL: <https://svn.boost.org/trac10/boost/ticket/13360#comment:2> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-12-27 10:50:13 UTC