diff --git a/include/boost/multiprecision/detail/number_base.hpp b/include/boost/multiprecision/detail/number_base.hpp index 24c3e29d..494ea62a 100644 --- a/include/boost/multiprecision/detail/number_base.hpp +++ b/include/boost/multiprecision/detail/number_base.hpp @@ -421,6 +421,9 @@ struct expression result_type r(*this); return static_cast(r); } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + BOOST_MP_FORCEINLINE explicit operator void()const {} +#endif # endif #else operator unmentionable_type()const @@ -484,6 +487,9 @@ struct expression result_type r(*this); return static_cast(r); } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + BOOST_MP_FORCEINLINE explicit operator void()const {} +#endif # endif #else operator unmentionable_type()const @@ -551,6 +557,9 @@ struct expression result_type r(*this); return static_cast(r); } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + BOOST_MP_FORCEINLINE explicit operator void()const {} +#endif # endif #else operator unmentionable_type()const @@ -629,6 +638,9 @@ struct expression result_type r(*this); return static_cast(r); } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + BOOST_MP_FORCEINLINE explicit operator void()const {} +#endif # endif #else operator unmentionable_type()const @@ -716,6 +728,9 @@ struct expression result_type r(*this); return static_cast(r); } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + BOOST_MP_FORCEINLINE explicit operator void()const {} +#endif # endif #else operator unmentionable_type()const diff --git a/include/boost/multiprecision/number.hpp b/include/boost/multiprecision/number.hpp index 641c5698..62321a63 100644 --- a/include/boost/multiprecision/number.hpp +++ b/include/boost/multiprecision/number.hpp @@ -632,6 +632,9 @@ public: { return !is_zero(); } +#if BOOST_WORKAROUND(BOOST_GCC_VERSION, < 40800) + BOOST_MP_FORCEINLINE explicit operator void()const {} +#endif # endif #else typedef bool (self_type::*unmentionable_type)()const;