diff --git a/include/boost/integer/common_factor_rt.hpp b/include/boost/integer/common_factor_rt.hpp index 64224e4..6d035b0 100644 --- a/include/boost/integer/common_factor_rt.hpp +++ b/include/boost/integer/common_factor_rt.hpp @@ -22,8 +22,11 @@ #include // for CHAR_MIN #include -#ifndef BOOST_NO_CXX11_NOEXCEPT -#include +#if !defined(BOOST_NO_CXX11_NOEXCEPT) && !defined(BOOST_NO_CXX11_HDR_TYPE_TRAITS) +# include +# define BOOST_INT_NOEXCEPT(T) BOOST_NOEXCEPT_IF(std::is_arithmetic::value) +#else +# define BOOST_INT_NOEXCEPT(T) #endif #ifdef BOOST_MSVC @@ -36,8 +39,6 @@ namespace boost namespace integer { -#define BOOST_INT_NOEXCEPT(T) BOOST_NOEXCEPT_IF(boost::is_arithmetic::value) - // Forward declarations for function templates -----------------------------// template < typename IntegerType >