Re: [Boost-bugs] [Boost C++ Libraries] #13360: std::numeric_limits<multiprecision::float128> methods fail to compile in C++11 mode

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