Subject: Re: [Boost-bugs] [Boost C++ Libraries] #12720: Implement is_floating_point and is_arithmetic for float128
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-01-02 16:54:33
#12720: Implement is_floating_point and is_arithmetic for float128
-----------------------------------------+----------------------------
Reporter: Charles Karney <charles@â¦> | Owner: johnmaddock
Type: Feature Requests | Status: closed
Milestone: To Be Determined | Component: multiprecision
Version: Boost 1.60.0 | Severity: Problem
Resolution: wontfix | Keywords:
-----------------------------------------+----------------------------
Changes (by johnmaddock):
* status: new => closed
* resolution: => wontfix
Comment:
Sorry, no can do: type_traits work on the what kind of type an object is,
not how they behave. float128 is a '''class type''' (and responds true to
{{{is_class}}}), it genuinely should not respond true to
{{{is_arithmetic}}} etc.
You code above should work fine if you use boost::mt19937 etc rather than
the std versions.
It's probably worth while filing a gcc/libstdc++ bug report as well since
the assert they are using could be replaced by one that uses
numeric_limits<> to verify a type behaves as a floating point type - and
numeric_limits is one trait we are allowed to specialize (and do so).
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/12720#comment:1> 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-02-16 18:50:20 UTC