diff --git a/CondFormats/Serialization/interface/eos/portable_iarchive.hpp b/CondFormats/Serialization/interface/eos/portable_iarchive.hpp index f8ee02d8c4a65..fcc3ee7d9d286 100644 --- a/CondFormats/Serialization/interface/eos/portable_iarchive.hpp +++ b/CondFormats/Serialization/interface/eos/portable_iarchive.hpp @@ -371,13 +371,13 @@ namespace eos { /** * \brief Load floating point types. * - * We simply rely on fp_traits to set the bit pattern from the (unsigned) + * We simply rely on fp_traits_non_native to set the bit pattern from the (unsigned) * integral type that was stored in the stream. Francois Mauger provided * standardized behaviour for special values like inf and NaN, that need to * be serialized in his application. * * \note by Johan Rade (author of the floating point utilities library): - * Be warned that the math::detail::fp_traits::type::get_bits() function + * Be warned that the math::detail::fp_traits_non_native::get_bits() function * is *not* guaranteed to give you all bits of the floating point number. It * will give you all bits if and only if there is an integer type that has * the same size as the floating point you are copying from. It will not @@ -397,7 +397,8 @@ namespace eos { */ template typename boost::enable_if >::type load(T& t, dummy<3> = 0) { - typedef typename fp::detail::fp_traits::type traits; + typedef typename fp::detail::size_to_precision::value>::type precision; + typedef typename fp::detail::fp_traits_non_native traits; // if you end here there are three possibilities: // 1. you're serializing a long double which is not portable diff --git a/CondFormats/Serialization/interface/eos/portable_oarchive.hpp b/CondFormats/Serialization/interface/eos/portable_oarchive.hpp index ba7aa18abfda4..fbc6c1fd2ecac 100644 --- a/CondFormats/Serialization/interface/eos/portable_oarchive.hpp +++ b/CondFormats/Serialization/interface/eos/portable_oarchive.hpp @@ -353,13 +353,13 @@ namespace eos { /** * \brief Save floating point types. * - * We simply rely on fp_traits to extract the bit pattern into an (unsigned) + * We simply rely on fp_traits_non_native to extract the bit pattern into an (unsigned) * integral type and store that into the stream. Francois Mauger provided * standardized behaviour for special values like inf and NaN, that need to * be serialized in his application. * * \note by Johan Rade (author of the floating point utilities library): - * Be warned that the math::detail::fp_traits::type::get_bits() function + * Be warned that the math::detail::fp_traits_non_native::get_bits() function * is *not* guaranteed to give you all bits of the floating point number. It * will give you all bits if and only if there is an integer type that has * the same size as the floating point you are copying from. It will not @@ -379,7 +379,8 @@ namespace eos { */ template typename boost::enable_if >::type save(const T& t, dummy<3> = 0) { - typedef typename fp::detail::fp_traits::type traits; + typedef typename fp::detail::size_to_precision::value>::type precision; + typedef typename fp::detail::fp_traits_non_native traits; // if the no_infnan flag is set we must throw here if (get_flags() & no_infnan && !fp::isfinite(t))