Second attempt at fixing usage of 64-bit integer type

[SVN r39363]
This commit is contained in:
Douglas Gregor
2007-09-18 12:09:53 +00:00
parent 2134db9324
commit 6ed3c013bb

View File

@ -81,9 +81,10 @@ namespace boost
template <> struct Integer<unsigned int> {};
template <> struct Integer<long> {};
template <> struct Integer<unsigned long> {};
// etc.
#ifdef _WIN64
# if defined(BOOST_HAS_LONG_LONG)
template <> struct Integer< ::boost::long_long_type> {};
template <> struct Integer< ::boost::ulong_long_type> {};
# elif defined(BOOST_HAS_MS_INT64)
template <> struct Integer<__int64> {};
template <> struct Integer<unsigned __int64> {};
# endif
@ -104,9 +105,7 @@ namespace boost
template <> struct SignedInteger<long> {};
# if defined(BOOST_HAS_LONG_LONG)
template <> struct SignedInteger< ::boost::long_long_type> {};
// etc.
#endif
#ifdef _WIN64
# elif defined(BOOST_HAS_MS_INT64)
template <> struct SignedInteger<__int64> {};
# endif
@ -127,14 +126,10 @@ namespace boost
template <> struct UnsignedInteger<unsigned long> {};
# if defined(BOOST_HAS_LONG_LONG)
template <> struct UnsignedInteger< ::boost::ulong_long_type> {};
// etc.
#endif
#ifdef _WIN64
# elif defined(BOOST_HAS_MS_INT64)
template <> struct UnsignedInteger<unsigned __int64> {};
# endif
// etc.
//===========================================================================
// Basic Concepts