Subject: [Boost-bugs] [Boost C++ Libraries] #13531: Facing build failure on PowerPC due to boost/spirit/home/x3/support/numeric_utils/sign.hpp
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2018-04-20 07:09:44
#13531: Facing build failure on PowerPC due to
boost/spirit/home/x3/support/numeric_utils/sign.hpp
-------------------------------------+----------------------------
Reporter: Rangasamy <rangasamy@â¦> | Owner: Joel de Guzman
Type: Bugs | Status: new
Milestone: To Be Determined | Component: spirit
Version: Boost 1.63.0 | Severity: Problem
Keywords: numeric_utils/sign.hpp |
-------------------------------------+----------------------------
Below is the error message from
boost/spirit/home/x3/support/numeric_utils/sign.hpp
This can be resolved by making the below change in sign.hpp,
#if defined(BOOST_MATH_USE_STD_FPCLASSIFY) &&
!defined(BOOST_MATH_DISABLE_STD_FPCLASSIFY)
return -x;
#else
return (boost::math::changesign)(x);
#endif
Kindly help in making this change for future releases.
Error Message below,
../../../../../include/boost/spirit/home/x3/support/numeric_utils/sign.hpp:
In instantiation of 'T snps_boost_1_63_0::spirit::x3::changesign(T) [with
T = long double]':
../../../../../include/boost/spirit/home/x3/support/numeric_utils/extract_real.hpp:93:38:
required from here
../../../../../include/boost/spirit/home/x3/support/numeric_utils/sign.hpp:36:32:
error: no type named 'bits' in 'traits_type {aka struct
snps_boost_1_63_0::math::detail::fp_traits_non_native<long double,
snps_boost_1_63_0::math::detail::extended_double_precision>}'
typename traits_type::bits a;
^
../../../../../include/boost/spirit/home/x3/support/numeric_utils/sign.hpp:37:26:
error: 'get_bits' is not a member of 'traits_type {aka
snps_boost_1_63_0::math::detail::fp_traits_non_native<long double,
snps_boost_1_63_0::math::detail::extended_double_precision>}'
traits_type::get_bits(x, a);
~~~~~~~~~~~~~~~~~~~~~^~~~~~
../../../../../include/boost/spirit/home/x3/support/numeric_utils/sign.hpp:36:32:
error: no type named 'bits' in 'traits_type {aka struct
snps_boost_1_63_0::math::detail::fp_traits_non_native<long double,
snps_boost_1_63_0::math::detail::extended_double_precision>}'
typename traits_type::bits a;
^
../../../../../include/boost/spirit/home/x3/support/numeric_utils/sign.hpp:38:7:
error: 'sign' is not a member of 'traits_type {aka
snps_boost_1_63_0::math::detail::fp_traits_non_native<long double,
snps_boost_1_63_0::math::detail::extended_double_precision>}'
a ^= traits_type::sign;
~~^~~~~~~~~~~~~~
../../../../../include/boost/spirit/home/x3/support/numeric_utils/sign.hpp:39:26:
error: 'set_bits' is not a member of 'traits_type {aka
snps_boost_1_63_0::math::detail::fp_traits_non_native<long double,
snps_boost_1_63_0::math::detail::extended_double_precision>}'
traits_type::set_bits(x, a);
~~~~~~~~~~~~~~~~~~~~~^~~~~~
*** exit status 1 ***
-- Ticket URL: <https://svn.boost.org/trac10/ticket/13531> 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 : 2018-04-20 07:15:57 UTC