mirror of
https://github.com/boostorg/mpl.git
synced 2025-08-03 14:54:30 +02:00
HPUX fixes
[SVN r16688]
This commit is contained in:
@@ -18,16 +18,17 @@
|
|||||||
#define BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
#define BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/aux_/config/static_constant.hpp"
|
#include "boost/mpl/aux_/config/static_constant.hpp"
|
||||||
|
#include "boost/mpl/aux_/config/workaround.hpp"
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
namespace mpl {
|
namespace mpl {
|
||||||
|
|
||||||
template< typename T,
|
template< typename T,
|
||||||
// the type of non-type template arguments may not depend on template arguments
|
// the type of non-type template arguments may not depend on template arguments
|
||||||
#if defined(BOOST_STRICT_CONFIG) || !defined(__HP_aCC) || __HP_aCC > 33900
|
#if BOOST_WORKAROUND(__HP_aCC, BOOST_TESTED_AT(53800))
|
||||||
T
|
long
|
||||||
#else
|
#else
|
||||||
long
|
T
|
||||||
#endif
|
#endif
|
||||||
N >
|
N >
|
||||||
struct integral_c
|
struct integral_c
|
||||||
@@ -46,10 +47,9 @@ struct integral_c
|
|||||||
public:
|
public:
|
||||||
typedef integral_c<T, next_value> next;
|
typedef integral_c<T, next_value> next;
|
||||||
typedef integral_c<T, prior_value> prior;
|
typedef integral_c<T, prior_value> prior;
|
||||||
#elif !defined(BOOST_STRICT_CONFIG) \
|
#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
|
||||||
&& (defined(__BORLANDC__) && __BORLANDC__ <= 0x561 \
|
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \
|
||||||
|| defined(__IBMCPP__) && __IBMCPP__ <= 502 \
|
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(53800))
|
||||||
|| defined(__HP_aCC) && __HP_aCC <= 33900)
|
|
||||||
typedef integral_c<T, (N + 1)> next;
|
typedef integral_c<T, (N + 1)> next;
|
||||||
typedef integral_c<T, (N - 1)> prior;
|
typedef integral_c<T, (N - 1)> prior;
|
||||||
#else
|
#else
|
||||||
@@ -65,7 +65,7 @@ struct integral_c
|
|||||||
};
|
};
|
||||||
|
|
||||||
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
|
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
|
||||||
&& !defined(__BORLANDC__) || __BORLANDC__ > 0x551
|
&& !BOOST_WORKAROUND(__BORLANDC__, <= 0x551)
|
||||||
// 'bool' constant doesn't have 'next'/'prior' members
|
// 'bool' constant doesn't have 'next'/'prior' members
|
||||||
template< bool C >
|
template< bool C >
|
||||||
struct integral_c<bool, C>
|
struct integral_c<bool, C>
|
||||||
|
Reference in New Issue
Block a user