Large patch from Ulrich Eckhardt to fix support for EVC++ 4.

[SVN r30670]
This commit is contained in:
John Maddock
2005-08-25 16:27:28 +00:00
parent a0bb26cf98
commit bc4d7d7b32
8 changed files with 11 additions and 11 deletions

View File

@ -121,7 +121,7 @@ public: // accessors
return this;
}
#if !BOOST_WORKAROUND(BOOST_MSVC, <= 1200)
#if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
const void* address() const
{
@ -136,7 +136,7 @@ public: // accessors
};
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1200)
#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
// MSVC6 seems not to like inline functions with const void* returns, so we
// declare the following here:

View File

@ -24,7 +24,7 @@
/**/
# define BOOST_TT_AUX_BOOL_C_BASE(C)
#elif defined(BOOST_MSVC) && BOOST_MSVC <= 1200
#elif defined(BOOST_MSVC) && BOOST_MSVC < 1300
# define BOOST_TT_AUX_BOOL_TRAIT_VALUE_DECL(C) \
typedef ::boost::integral_constant<bool,C> base_; \

View File

@ -18,7 +18,7 @@
#include <cstddef>
#if !defined(BOOST_MSVC) || BOOST_MSVC > 1200
#if !defined(BOOST_MSVC) || BOOST_MSVC >= 1300
# define BOOST_TT_AUX_SIZE_T_BASE(C) ::boost::integral_constant<std::size_t,C>
# define BOOST_TT_AUX_SIZE_T_TRAIT_VALUE_DECL(C) /**/
#else

View File

@ -120,7 +120,7 @@ template <class T, std::size_t N = 0>
struct extent
: public ::boost::integral_constant<std::size_t, ::boost::detail::extent_imp<T,N>::value>
{
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1200)
#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
typedef ::boost::integral_constant<std::size_t, ::boost::detail::extent_imp<T,N>::value> base_;
using base_::value;
#endif

View File

@ -59,7 +59,7 @@ public:
template<> struct integral_constant<bool,true> : public mpl::true_
{
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1200)
#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
typedef mpl::true_ base_;
using base_::value;
#endif
@ -67,7 +67,7 @@ template<> struct integral_constant<bool,true> : public mpl::true_
};
template<> struct integral_constant<bool,false> : public mpl::false_
{
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1200)
#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
typedef mpl::false_ base_;
using base_::value;
#endif

View File

@ -52,7 +52,7 @@ struct is_class_or_union
template <typename T>
struct is_class_or_union
{
# if BOOST_WORKAROUND(BOOST_MSVC, == 1200) || BOOST_WORKAROUND(__BORLANDC__, <= 0x570)// we simply can't detect it this way.
# if BOOST_WORKAROUND(BOOST_MSVC, < 1300) || BOOST_WORKAROUND(__BORLANDC__, <= 0x570)// we simply can't detect it this way.
BOOST_STATIC_CONSTANT(bool, value = false);
# else
template <class U> static ::boost::type_traits::yes_type is_class_or_union_tester(void(U::*)(void));

View File

@ -41,9 +41,9 @@ BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,char,true)
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,wchar_t,true)
#endif
#if (defined(BOOST_MSVC) && (BOOST_MSVC == 1200)) \
#if (defined(BOOST_MSVC) && (BOOST_MSVC < 1300)) \
|| (defined(BOOST_INTEL_CXX_VERSION) && defined(_MSC_VER) && (BOOST_INTEL_CXX_VERSION <= 600)) \
|| (defined(__BORLANDC__) && (__BORLANDC__ == 0x600) && (_MSC_VER == 1200))
|| (defined(__BORLANDC__) && (__BORLANDC__ == 0x600) && (_MSC_VER < 1300))
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,unsigned __int8,true)
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,__int8,true)
BOOST_TT_AUX_BOOL_TRAIT_CV_SPEC1(is_integral,unsigned __int16,true)

View File

@ -59,7 +59,7 @@ struct is_signed_imp
> selector;
typedef typename selector::template rebind<T> binder;
typedef typename binder::type type;
#if defined(BOOST_MSVC) && (BOOST_MSVC <= 1200)
#if defined(BOOST_MSVC) && (BOOST_MSVC < 1300)
BOOST_STATIC_CONSTANT(bool, value = is_signed_imp<T>::type::value);
#else
BOOST_STATIC_CONSTANT(bool, value = type::value);