summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/type_traits/is_signed.hpp')
-rw-r--r--3rdParty/Boost/src/boost/type_traits/is_signed.hpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/3rdParty/Boost/src/boost/type_traits/is_signed.hpp b/3rdParty/Boost/src/boost/type_traits/is_signed.hpp
index bf7bbfd..ba7d6e9 100644
--- a/3rdParty/Boost/src/boost/type_traits/is_signed.hpp
+++ b/3rdParty/Boost/src/boost/type_traits/is_signed.hpp
@@ -24,14 +24,19 @@ namespace boost {
namespace detail{
-#if !(defined(__EDG_VERSION__) && __EDG_VERSION__ <= 238)
+#if !(defined(__EDG_VERSION__) && __EDG_VERSION__ <= 238) && !defined(BOOST_NO_INCLASS_MEMBER_INITIALIZATION)
template <class T>
struct is_signed_values
{
+ //
+ // Note that we cannot use BOOST_STATIC_CONSTANT here, using enum's
+ // rather than "real" static constants simply doesn't work or give
+ // the correct answer.
+ //
typedef typename remove_cv<T>::type no_cv_t;
- BOOST_STATIC_CONSTANT(no_cv_t, minus_one = (static_cast<no_cv_t>(-1)));
- BOOST_STATIC_CONSTANT(no_cv_t, zero = (static_cast<no_cv_t>(0)));
+ static const no_cv_t minus_one = (static_cast<no_cv_t>(-1));
+ static const no_cv_t zero = (static_cast<no_cv_t>(0));
};
template <class T>