workarounds for IRIX CC

[SVN r15776]
This commit is contained in:
Dave Abrahams
2002-10-07 16:25:37 +00:00
parent cb39883773
commit c96091753b
2 changed files with 24 additions and 14 deletions

View File

@@ -106,7 +106,9 @@ template<> struct arg<i>
{ {
typedef BOOST_PP_CAT(U,i) type; typedef BOOST_PP_CAT(U,i) type;
#if !defined(__BORLANDC__) || (__BORLANDC__ > 0x561 && defined(BOOST_STRICT_CONFIG)) #if !defined(__BORLANDC__) || (__BORLANDC__ > 0x561 && defined(BOOST_STRICT_CONFIG))
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
#endif #endif
}; };
}; };
@@ -127,7 +129,9 @@ template<> struct arg<-1>
{ {
typedef U1 type; typedef U1 type;
#if !defined(__BORLANDC__) || (__BORLANDC__ > 0x561 && defined(BOOST_STRICT_CONFIG)) #if !defined(__BORLANDC__) || (__BORLANDC__ > 0x561 && defined(BOOST_STRICT_CONFIG))
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
#endif #endif
}; };
}; };

View File

@@ -15,8 +15,9 @@ template<> struct arg<-1>
struct apply struct apply
{ {
typedef U1 type; typedef U1 type;
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
}; };
}; };
@@ -32,8 +33,9 @@ template<> struct arg<1>
struct apply struct apply
{ {
typedef U1 type; typedef U1 type;
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
}; };
}; };
@@ -49,8 +51,9 @@ template<> struct arg<2>
struct apply struct apply
{ {
typedef U2 type; typedef U2 type;
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
}; };
}; };
@@ -66,8 +69,9 @@ template<> struct arg<3>
struct apply struct apply
{ {
typedef U3 type; typedef U3 type;
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
}; };
}; };
@@ -83,8 +87,9 @@ template<> struct arg<4>
struct apply struct apply
{ {
typedef U4 type; typedef U4 type;
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
}; };
}; };
@@ -100,8 +105,9 @@ template<> struct arg<5>
struct apply struct apply
{ {
typedef U5 type; typedef U5 type;
BOOST_STATIC_ASSERT(!is_void_<type>::value); private:
BOOST_STATIC_CONSTANT(bool, nv = !is_void_<type>::value);
BOOST_STATIC_ASSERT(nv);
}; };
}; };