update boost

This commit is contained in:
2023-11-24 12:56:13 -06:00
parent cfc99971af
commit 19d727037a
9260 changed files with 849256 additions and 299957 deletions

View File

@@ -28,7 +28,7 @@
// 'or' and 'and' macros, see http://tinyurl.com/3et69; 'defined(and)'
// has to be checked in a separate condition, otherwise GCC complains
// about 'and' being an alternative token
#if defined(_MSC_VER) && !defined(__clang__)
#if defined(_MSC_VER)
#ifndef __GCCXML__
#if defined(and)
# pragma push_macro("and")

View File

@@ -39,7 +39,7 @@
#include <boost/mpl/if.hpp>
#endif
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| (BOOST_MPL_CFG_GCC != 0) \
|| BOOST_WORKAROUND(__IBMCPP__, <= 600)
# define BOOST_MPL_CFG_ASSERT_USE_RELATION_NAMES
@@ -47,16 +47,16 @@
#if BOOST_WORKAROUND(__MWERKS__, < 0x3202) \
|| BOOST_WORKAROUND(__EDG_VERSION__, <= 238) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
# define BOOST_MPL_CFG_ASSERT_BROKEN_POINTER_TO_POINTER_TO_MEMBER
#endif
// agurt, 10/nov/06: use enums for Borland (which cannot cope with static constants)
// and GCC (which issues "unused variable" warnings when static constants are used
// and GCC/PGI/Clang (which issues "unused variable" warnings when static constants are used
// at a function scope)
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| (BOOST_MPL_CFG_GCC != 0) || (BOOST_MPL_CFG_GPU != 0) || defined(__PGI)
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| (BOOST_MPL_CFG_GCC != 0) || (BOOST_MPL_CFG_GPU != 0) || defined(__PGI) || defined(__clang__)
# define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr }
#else
# define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) BOOST_STATIC_CONSTANT(T, expr)
@@ -184,7 +184,7 @@ template< typename P > struct assert_arg_pred_not
typedef typename assert_arg_pred_impl<p>::type type;
};
#if defined(BOOST_GCC) && BOOST_GCC >= 80000
#if BOOST_WORKAROUND(BOOST_GCC_VERSION, >= 80000)
#define BOOST_MPL_IGNORE_PARENTHESES_WARNING
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wparentheses"
@@ -297,7 +297,7 @@ BOOST_MPL_AUX_ASSERT_CONSTANT( \
std::size_t \
, BOOST_PP_CAT(mpl_assertion_in_line_,BOOST_MPL_AUX_PP_COUNTER()) = sizeof( \
boost::mpl::assertion_failed<false>( \
boost::mpl::assert_arg( (void (*) pred)0, 1 ) \
boost::mpl::assert_arg( (void (*) pred)BOOST_NULLPTR, 1 ) \
) \
) \
) \
@@ -310,7 +310,7 @@ BOOST_MPL_AUX_ASSERT_CONSTANT( \
enum { \
BOOST_PP_CAT(mpl_assertion_in_line_,BOOST_MPL_AUX_PP_COUNTER()) = sizeof( \
boost::mpl::assertion<false>::failed( \
boost::mpl::assert_not_arg( (void (*) pred)0, 1 ) \
boost::mpl::assert_not_arg( (void (*) pred)BOOST_NULLPTR, 1 ) \
) \
) \
}\
@@ -321,7 +321,7 @@ BOOST_MPL_AUX_ASSERT_CONSTANT( \
std::size_t \
, BOOST_PP_CAT(mpl_assertion_in_line_,BOOST_MPL_AUX_PP_COUNTER()) = sizeof( \
boost::mpl::assertion_failed<false>( \
boost::mpl::assert_not_arg( (void (*) pred)0, 1 ) \
boost::mpl::assert_not_arg( (void (*) pred)BOOST_NULLPTR, 1 ) \
) \
) \
) \

View File

@@ -16,7 +16,7 @@
#include <boost/mpl/aux_/config/workaround.hpp>
#if BOOST_WORKAROUND(__BORLANDC__, < 0x561)
#if BOOST_WORKAROUND(BOOST_BORLANDC, < 0x561)
// agurt, 12/nov/02: to suppress the bogus "Cannot have both a template class
// and function named 'xxx'" diagnostic
# define BOOST_MPL_AUX_COMMON_NAME_WKND(name) \
@@ -29,6 +29,6 @@ template< typename > void name(); \
# define BOOST_MPL_AUX_COMMON_NAME_WKND(name) /**/
#endif // __BORLANDC__
#endif // BOOST_BORLANDC
#endif // BOOST_MPL_AUX_COMMON_NAME_WKND_HPP_INCLUDED

View File

@@ -27,7 +27,7 @@
#if !defined(BOOST_MPL_CFG_NO_ADL_BARRIER_NAMESPACE) \
&& ( BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) \
|| BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3202)) \
|| BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, BOOST_TESTED_AT(810)) \

View File

@@ -19,7 +19,7 @@
#if !defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& ( BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
&& ( BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
)

View File

@@ -18,8 +18,8 @@
#if !defined(BOOST_MPL_CFG_BCC590_WORKAROUNDS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& BOOST_WORKAROUND(__BORLANDC__, >= 0x590) \
&& BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
&& BOOST_WORKAROUND(BOOST_BORLANDC, >= 0x590) \
&& BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_CFG_BCC590_WORKAROUNDS

View File

@@ -21,7 +21,7 @@
#if !defined(BOOST_MPL_CFG_NO_BIND_TEMPLATE) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& ( BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
)
# define BOOST_MPL_CFG_NO_BIND_TEMPLATE

View File

@@ -32,10 +32,10 @@
# elif BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0304))
# define BOOST_MPL_CFG_COMPILER_DIR gcc
# elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
# elif BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# if !defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES)
# define BOOST_MPL_CFG_COMPILER_DIR bcc551
# elif BOOST_WORKAROUND(__BORLANDC__, >= 0x590)
# elif BOOST_WORKAROUND(BOOST_BORLANDC, >= 0x590)
# define BOOST_MPL_CFG_COMPILER_DIR bcc
# else
# define BOOST_MPL_CFG_COMPILER_DIR bcc_pre590

View File

@@ -19,7 +19,7 @@
#if !defined(BOOST_MPL_CFG_NO_NONTYPE_TEMPLATE_PARTIAL_SPEC) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& BOOST_WORKAROUND(__BORLANDC__, < 0x582)
&& BOOST_WORKAROUND(BOOST_BORLANDC, < 0x582)
# define BOOST_MPL_CFG_NO_NONTYPE_TEMPLATE_PARTIAL_SPEC

View File

@@ -24,8 +24,8 @@
#if !defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& BOOST_WORKAROUND(__BORLANDC__, >= 0x560) \
&& BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
&& BOOST_WORKAROUND(BOOST_BORLANDC, >= 0x560) \
&& BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES
@@ -35,7 +35,7 @@
#if !defined(BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& ( BOOST_WORKAROUND(__MWERKS__, <= 0x3001) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \
)

View File

@@ -18,7 +18,7 @@
#if !defined(BOOST_MPL_CFG_NO_NESTED_FORWARDING) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
&& BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_CFG_NO_NESTED_FORWARDING

View File

@@ -19,7 +19,7 @@
#if !defined(BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
&& BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS

View File

@@ -20,7 +20,7 @@
#if !defined(BOOST_MPL_CFG_USE_OPERATORS_OVERLOADING) \
&& ( BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(__EDG_VERSION__, <= 245) \
|| BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, <= 0x0295) \
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) \

View File

@@ -18,7 +18,7 @@
#if !defined(BOOST_MPL_CFG_BROKEN_OVERLOAD_RESOLUTION) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& ( BOOST_WORKAROUND(__BORLANDC__, < 0x590) \
&& ( BOOST_WORKAROUND(BOOST_BORLANDC, < 0x590) \
|| BOOST_WORKAROUND(__MWERKS__, < 0x3001) \
)

View File

@@ -18,7 +18,7 @@
#if !defined(BOOST_MPL_CFG_BROKEN_PP_MACRO_EXPANSION) \
&& ( BOOST_WORKAROUND(__MWERKS__, <= 0x3003) \
|| BOOST_WORKAROUND(__BORLANDC__, < 0x582) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, < 0x582) \
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \
)

View File

@@ -20,7 +20,7 @@
#if !defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) \
&& ( defined(BOOST_NO_TEMPLATE_TEMPLATES) \
|| BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT( 0x590) ) \
|| BOOST_WORKAROUND( BOOST_BORLANDC, BOOST_TESTED_AT( 0x590) ) \
)
# define BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS
@@ -31,7 +31,7 @@
#if !defined(BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE) \
&& ( BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0302)) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610)) \
)
# define BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING

View File

@@ -26,7 +26,7 @@ namespace boost { namespace mpl {
template< typename Tag > struct count_impl
{
template< typename Sequence, typename T > struct apply
#if BOOST_WORKAROUND(__BORLANDC__,BOOST_TESTED_AT(0x561))
#if BOOST_WORKAROUND(BOOST_BORLANDC,BOOST_TESTED_AT(0x561))
{
typedef typename count_if< Sequence,same_as<T> >::type type;
BOOST_STATIC_CONSTANT(int, value = BOOST_MPL_AUX_VALUE_WKND(type)::value);

View File

@@ -60,7 +60,7 @@ struct AUX778076_FOLD_IMPL_NAME;
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
# if !BOOST_WORKAROUND(__BORLANDC__, < 0x600)
# if !BOOST_WORKAROUND(BOOST_BORLANDC, < 0x600)
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(0, BOOST_MPL_LIMIT_UNROLLING, <boost/mpl/aux_/fold_impl_body.hpp>))
@@ -125,7 +125,7 @@ struct AUX778076_FOLD_IMPL_NAME<-1,Last,Last,State,ForwardOp>
typedef Last iterator;
};
# else // BOOST_WORKAROUND(__BORLANDC__, < 0x600)
# else // BOOST_WORKAROUND(BOOST_BORLANDC, < 0x600)
// Borland have some serious problems with the unrolled version, so
// we always use a basic implementation
@@ -164,7 +164,7 @@ struct AUX778076_FOLD_IMPL_NAME<N,Last,Last,State,ForwardOp >
typedef state type;
};
# endif // BOOST_WORKAROUND(__BORLANDC__, < 0x600)
# endif // BOOST_WORKAROUND(BOOST_BORLANDC, < 0x600)
#else // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION

View File

@@ -25,7 +25,7 @@
# include <boost/mpl/if.hpp>
# include <boost/mpl/bool.hpp>
# include <boost/mpl/aux_/msvc_is_class.hpp>
#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
#elif BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# include <boost/mpl/if.hpp>
# include <boost/mpl/bool.hpp>
# include <boost/mpl/aux_/yes_no.hpp>
@@ -62,7 +62,7 @@ struct has_rebind
template< typename T > struct has_rebind_tag {};
no_tag operator|(has_rebind_tag<int>, void const volatile*);
# if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
# if !BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
template< typename T >
struct has_rebind
{
@@ -71,7 +71,7 @@ struct has_rebind
sizeof(has_rebind_tag<int>() | get()) == sizeof(yes_tag)
);
};
# else // __BORLANDC__
# else // BOOST_BORLANDC
template< typename T >
struct has_rebind_impl
{
@@ -90,7 +90,7 @@ struct has_rebind
>::type
{
};
# endif // __BORLANDC__
# endif // BOOST_BORLANDC
#endif

View File

@@ -63,7 +63,7 @@ struct AUX_WRAPPER_NAME
public:
typedef AUX_WRAPPER_INST(next_value) next;
typedef AUX_WRAPPER_INST(prior_value) prior;
#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
#elif BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x561)) \
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \
|| (BOOST_WORKAROUND(__HP_aCC, <= 53800) && (BOOST_WORKAROUND(__hpxstd98, != 1)))
typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (N + 1)) ) next;

View File

@@ -110,7 +110,7 @@ template< typename T > struct has_rebind_tag;
typedef BOOST_PP_CAT(name,_rebind) rebind; \
/**/
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_AUX_LAMBDA_SUPPORT_HAS_REBIND(i, name, params) \
template< BOOST_MPL_PP_PARAMS(i,typename T) > \
::boost::mpl::aux::yes_tag operator|( \
@@ -134,7 +134,7 @@ template< BOOST_MPL_PP_PARAMS(i,typename T) > \
# define BOOST_MPL_AUX_LAMBDA_SUPPORT_HAS_REBIND(i, name, params) /**/
#endif
# if !defined(__BORLANDC__)
# if !defined(BOOST_BORLANDC)
# define BOOST_MPL_AUX_LAMBDA_SUPPORT(i, name, params) \
BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(i, name, params) \
}; \
@@ -160,7 +160,7 @@ class BOOST_PP_CAT(name,_rebind) \
typedef typename name< BOOST_MPL_PP_PARAMS(i,U) >::type type; \
}; \
/**/
# endif // __BORLANDC__
# endif // BOOST_BORLANDC
#endif // __EDG_VERSION__

View File

@@ -18,7 +18,7 @@
#include <boost/mpl/aux_/config/workaround.hpp>
#if BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0302)) \
|| BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
|| BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x561)) \
|| BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x530)) \
|| BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))

View File

@@ -12,7 +12,7 @@
namespace boost { namespace mpl { namespace aux {
template< int N > struct arity_tag
{
typedef char (&type)[N + 1];
typedef char (&type)[(unsigned)N + 1];
};
template<

View File

@@ -29,6 +29,10 @@
BOOST_PP_CAT(BOOST_MPL_PP_ENUM_,n)(param) \
/**/
# define BOOST_MPL_PP_ENUM_Z(z_ignored, n, param) \
BOOST_PP_CAT(BOOST_MPL_PP_ENUM_,n)(param) \
/**/
# define BOOST_MPL_PP_ENUM_0(p)
# define BOOST_MPL_PP_ENUM_1(p) p
# define BOOST_MPL_PP_ENUM_2(p) p,p
@@ -57,6 +61,14 @@
) \
/**/
# define BOOST_MPL_PP_ENUM_Z(z, n, param) \
BOOST_PP_REPEAT_ ## z( \
n \
, BOOST_MPL_PP_AUX_ENUM_FUNC \
, param \
) \
/**/
#endif
#endif // BOOST_MPL_AUX_PREPROCESSOR_ENUM_HPP_INCLUDED

View File

@@ -29,6 +29,10 @@
BOOST_PP_CAT(BOOST_MPL_PP_PARAMS_,n)(p) \
/**/
# define BOOST_MPL_PP_PARAMS_Z(z_ignored,n,p) \
BOOST_PP_CAT(BOOST_MPL_PP_PARAMS_,n)(p) \
/**/
# define BOOST_MPL_PP_PARAMS_0(p)
# define BOOST_MPL_PP_PARAMS_1(p) p##1
# define BOOST_MPL_PP_PARAMS_2(p) p##1,p##2
@@ -60,6 +64,14 @@
) \
/**/
# define BOOST_MPL_PP_PARAMS_Z(z, n, param) \
BOOST_PP_REPEAT_ ## z( \
n \
, BOOST_MPL_PP_AUX_PARAM_FUNC \
, param \
) \
/**/
#endif
#endif // BOOST_MPL_AUX_PREPROCESSOR_PARAMS_HPP_INCLUDED

View File

@@ -29,7 +29,7 @@ template< typename Tag >
struct size_impl
{
template< typename Sequence > struct apply
#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
#if !BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x561))
: distance<
typename begin<Sequence>::type
, typename end<Sequence>::type

View File

@@ -16,7 +16,7 @@
#include <boost/mpl/aux_/config/workaround.hpp>
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x561)) \
|| BOOST_WORKAROUND(__GNUC__, < 3) \
|| BOOST_WORKAROUND(__MWERKS__, <= 0x3001)
# define BOOST_MPL_AUX_STATIC_CAST(T, expr) (T)(expr)

View File

@@ -65,7 +65,7 @@ namespace boost { namespace mpl { namespace aux {
template< BOOST_MPL_AUX_NTTP_DECL(int, N) > struct arity_tag
{
typedef char (&type)[N + 1];
typedef char (&type)[(unsigned)N + 1];
};
# define AUX778076_MAX_ARITY_OP(unused, state, i_) \

View File

@@ -18,6 +18,7 @@
#include <boost/mpl/aux_/config/arrays.hpp>
#include <boost/mpl/aux_/config/msvc.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#include <cstddef>
namespace boost { namespace mpl { namespace aux {
@@ -36,7 +37,7 @@ template<> struct yes_no_tag<true>
};
template< BOOST_MPL_AUX_NTTP_DECL(long, n) > struct weighted_tag
template< BOOST_MPL_AUX_NTTP_DECL(std::size_t, n) > struct weighted_tag
{
#if !BOOST_WORKAROUND(BOOST_MSVC, < 1300)
typedef char (&type)[n];

View File

@@ -19,7 +19,7 @@
// macros, see http://tinyurl.com/ycwdxco; 'defined(bitand)'
// has to be checked in a separate condition, otherwise GCC complains
// about 'bitand' being an alternative token
#if defined(_MSC_VER) && !defined(__clang__)
#if defined(_MSC_VER)
#ifndef __GCCXML__
#if defined(bitand)
# pragma push_macro("bitand")

View File

@@ -19,7 +19,7 @@
// macros, see http://tinyurl.com/ycwdxco; 'defined(bitor)'
// has to be checked in a separate condition, otherwise GCC complains
// about 'bitor' being an alternative token
#if defined(_MSC_VER) && !defined(__clang__)
#if defined(_MSC_VER)
#ifndef __GCCXML__
#if defined(bitor)
# pragma push_macro("bitor")

View File

@@ -33,7 +33,7 @@
#include <boost/preprocessor/repetition/enum_params.hpp>
#include <boost/preprocessor/repetition/enum_trailing_params.hpp>
#if BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT(0x590) )
#if BOOST_WORKAROUND( BOOST_BORLANDC, BOOST_TESTED_AT(0x590) )
# include <boost/type_traits/is_class.hpp>
#endif
@@ -196,7 +196,7 @@ struct trait \
}; \
/**/
# elif BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT(0x590) )
# elif BOOST_WORKAROUND( BOOST_BORLANDC, BOOST_TESTED_AT(0x590) )
# define BOOST_MPL_HAS_XXX_TRAIT_NAMED_BCB_DEF(trait, trait_tester, name, default_) \
template< typename T, bool IS_CLASS > \
@@ -334,7 +334,7 @@ struct trait \
// correct name but different number of arguments.
# define BOOST_MPL_HAS_MEMBER_MULTI_SUBSTITUTE(z, n, args) \
template< \
template< BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(n), typename V) > class V \
template< BOOST_PP_ENUM_PARAMS_Z(z, BOOST_PP_INC(n), typename V) > class V \
> \
struct BOOST_MPL_HAS_MEMBER_INTROSPECTION_SUBSTITUTE_NAME(args, n) { \
}; \
@@ -503,7 +503,7 @@ struct trait \
z, n, args \
) \
template< \
template< BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(n), typename U) > class U \
template< BOOST_PP_ENUM_PARAMS_Z(z, BOOST_PP_INC(n), typename U) > class U \
> \
struct BOOST_MPL_HAS_MEMBER_INTROSPECTION_SUBSTITUTE_NAME_WITH_TEMPLATE_SFINAE( \
args, n \

View File

@@ -46,7 +46,7 @@ struct if_c<false,T1,T2>
};
// agurt, 05/sep/04: nondescriptive parameter names for the sake of DigitalMars
// (and possibly MWCW < 8.0); see http://article.gmane.org/gmane.comp.lib.boost.devel/108959
// (and possibly MWCW < 8.0); see https://lists.boost.org/Archives/boost/2004/09/71383.php
template<
typename BOOST_MPL_AUX_NA_PARAM(T1)
, typename BOOST_MPL_AUX_NA_PARAM(T2)

View File

@@ -33,7 +33,7 @@
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
&& !BOOST_WORKAROUND(__BORLANDC__, <= 0x551)
&& !BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x551)
BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN
// 'bool' constant doesn't have 'next'/'prior' members
template< bool C >

View File

@@ -19,7 +19,7 @@
#include <boost/mpl/aux_/na_spec.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_CFG_STRIPPED_DOWN_LOWER_BOUND_IMPL
#endif

View File

@@ -21,7 +21,7 @@
// resolves conflicts with 'boost::numeric_cast' function template.
// use it in your own code _only_ if you care about compatibility with
// these outdated compilers!
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x570) )
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) || BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x570) )
# define BOOST_MPL_AUX_NUMERIC_CAST numeric_cast_
#else
# define BOOST_MPL_AUX_NUMERIC_CAST numeric_cast

View File

@@ -29,7 +29,7 @@
// 'or' and 'and' macros, see http://tinyurl.com/3et69; 'defined(or)'
// has to be checked in a separate condition, otherwise GCC complains
// about 'or' being an alternative token
#if defined(_MSC_VER) && !defined(__clang__)
#if defined(_MSC_VER)
#ifndef __GCCXML__
#if defined(or)
# pragma push_macro("or")

View File

@@ -500,11 +500,11 @@ namespace boost { namespace mpl
};
#define M0(z, n, data) \
template<BOOST_PP_ENUM_PARAMS(BOOST_MPL_STRING_MAX_PARAMS, int C), int J> \
struct string_iterator<mpl::string<BOOST_PP_ENUM_PARAMS(BOOST_MPL_STRING_MAX_PARAMS, C)>, n, J> \
template<BOOST_PP_ENUM_PARAMS_Z(z, BOOST_MPL_STRING_MAX_PARAMS, int C), int J> \
struct string_iterator<mpl::string<BOOST_PP_ENUM_PARAMS_Z(z, BOOST_MPL_STRING_MAX_PARAMS, C)>, n, J> \
{ \
enum { eomc_ = (BOOST_MPL_MULTICHAR_LENGTH(BOOST_PP_CAT(C, n)) == J + 1) }; \
typedef mpl::string<BOOST_PP_ENUM_PARAMS(BOOST_MPL_STRING_MAX_PARAMS, C)> string; \
typedef mpl::string<BOOST_PP_ENUM_PARAMS_Z(z, BOOST_MPL_STRING_MAX_PARAMS, C)> string; \
typedef std::bidirectional_iterator_tag category; \
typedef \
mpl::string_iterator<string, n + eomc_, eomc_ ? 0 : J + 1> \
@@ -514,11 +514,11 @@ namespace boost { namespace mpl
prior; \
typedef mpl::char_<BOOST_MPL_MULTICHAR_AT(BOOST_PP_CAT(C, n), J)> type; \
}; \
template<BOOST_PP_ENUM_PARAMS(BOOST_MPL_STRING_MAX_PARAMS, int C)> \
struct string_iterator<mpl::string<BOOST_PP_ENUM_PARAMS(BOOST_MPL_STRING_MAX_PARAMS, C)>, n, 0> \
template<BOOST_PP_ENUM_PARAMS_Z(z, BOOST_MPL_STRING_MAX_PARAMS, int C)> \
struct string_iterator<mpl::string<BOOST_PP_ENUM_PARAMS_Z(z, BOOST_MPL_STRING_MAX_PARAMS, C)>, n, 0> \
{ \
enum { eomc_ = (BOOST_MPL_MULTICHAR_LENGTH(BOOST_PP_CAT(C, n)) == 1) }; \
typedef mpl::string<BOOST_PP_ENUM_PARAMS(BOOST_MPL_STRING_MAX_PARAMS, C)> string; \
typedef mpl::string<BOOST_PP_ENUM_PARAMS_Z(z, BOOST_MPL_STRING_MAX_PARAMS, C)> string; \
typedef std::bidirectional_iterator_tag category; \
typedef \
mpl::string_iterator<string, n + eomc_, !eomc_> \

View File

@@ -19,7 +19,7 @@
#include <boost/mpl/aux_/na_spec.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x610))
# define BOOST_MPL_CFG_STRIPPED_DOWN_UPPER_BOUND_IMPL
#endif

View File

@@ -65,7 +65,7 @@ template< BOOST_MPL_AUX_NTTP_DECL(long, n_) >
struct at_impl< aux::vector_tag<n_> >
{
template< typename Vector, typename N > struct apply
#if !defined(__BORLANDC__)
#if !defined(BOOST_BORLANDC)
: v_at<
Vector
, BOOST_MPL_AUX_VALUE_WKND(N)::value