summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/proto/extends.hpp')
-rw-r--r--3rdParty/Boost/src/boost/proto/extends.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/3rdParty/Boost/src/boost/proto/extends.hpp b/3rdParty/Boost/src/boost/proto/extends.hpp
index 47dca11..1fb0429 100644
--- a/3rdParty/Boost/src/boost/proto/extends.hpp
+++ b/3rdParty/Boost/src/boost/proto/extends.hpp
@@ -2,71 +2,71 @@
/// \file extends.hpp
/// Macros and a base class for defining end-user expression types
//
// Copyright 2008 Eric Niebler. Distributed under the Boost
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_PROTO_EXTENDS_HPP_EAN_11_1_2006
#define BOOST_PROTO_EXTENDS_HPP_EAN_11_1_2006
#include <cstddef> // for offsetof
#include <boost/config.hpp>
#include <boost/detail/workaround.hpp>
#include <boost/preprocessor/facilities/empty.hpp>
#include <boost/preprocessor/tuple/elem.hpp>
#include <boost/preprocessor/control/if.hpp>
#include <boost/preprocessor/arithmetic/inc.hpp>
#include <boost/preprocessor/arithmetic/dec.hpp>
#include <boost/preprocessor/iteration/local.hpp>
#include <boost/preprocessor/repetition/enum_params.hpp>
#include <boost/preprocessor/repetition/repeat_from_to.hpp>
#include <boost/preprocessor/repetition/enum_binary_params.hpp>
#include <boost/preprocessor/repetition/enum_trailing_params.hpp>
#include <boost/preprocessor/repetition/enum_trailing_binary_params.hpp>
#include <boost/preprocessor/seq/for_each.hpp>
#include <boost/utility/addressof.hpp>
#include <boost/utility/result_of.hpp>
#include <boost/proto/proto_fwd.hpp>
#include <boost/proto/traits.hpp>
#include <boost/proto/expr.hpp>
#include <boost/proto/args.hpp>
#include <boost/proto/traits.hpp>
#include <boost/proto/generate.hpp>
#include <boost/proto/detail/remove_typename.hpp>
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#if defined(_MSC_VER)
# pragma warning(push)
# pragma warning(disable : 4714) // function 'xxx' marked as __forceinline not inlined
#endif
namespace boost { namespace proto
{
#ifdef __GNUC__
/// INTERNAL ONLY
///
# define BOOST_PROTO_ADDROF(x) ((char const volatile*)boost::addressof(x))
/// INTERNAL ONLY
///
# define BOOST_PROTO_OFFSETOF(s,m) (BOOST_PROTO_ADDROF((((s *)this)->m)) - BOOST_PROTO_ADDROF(*((s *)this)))
#else
/// INTERNAL ONLY
///
# define BOOST_PROTO_OFFSETOF offsetof
#endif
/// INTERNAL ONLY
///
#define BOOST_PROTO_CONST() const
/// INTERNAL ONLY
///
#define BOOST_PROTO_TYPENAME() typename
/// INTERNAL ONLY
///
#define BOOST_PROTO_TEMPLATE_YES_(Z, N) template<BOOST_PP_ENUM_PARAMS_Z(Z, N, typename A)>
/// INTERNAL ONLY
///
#define BOOST_PROTO_TEMPLATE_NO_(Z, N)
@@ -361,71 +361,71 @@ namespace boost { namespace proto
#define BOOST_PROTO_EXTENDS_SUBSCRIPT_CONST() \
BOOST_PROTO_EXTENDS_SUBSCRIPT_IMPL_(BOOST_PROTO_CONST, BOOST_PP_EMPTY) \
BOOST_PROTO_EXTENDS_SUBSCRIPT_IMPL_(BOOST_PROTO_CONST, BOOST_PROTO_CONST) \
/**/
#define BOOST_PROTO_EXTENDS_SUBSCRIPT_NON_CONST() \
BOOST_PROTO_EXTENDS_SUBSCRIPT_IMPL_(BOOST_PP_EMPTY, BOOST_PP_EMPTY) \
BOOST_PROTO_EXTENDS_SUBSCRIPT_IMPL_(BOOST_PP_EMPTY, BOOST_PROTO_CONST) \
/**/
#define BOOST_PROTO_EXTENDS_SUBSCRIPT() \
BOOST_PROTO_EXTENDS_SUBSCRIPT_CONST() \
BOOST_PROTO_EXTENDS_SUBSCRIPT_NON_CONST() \
/**/
/// INTERNAL ONLY
///
#define BOOST_PROTO_EXTENDS_FUNCTION_() \
template<typename Sig> \
struct result \
{ \
typedef \
typename BOOST_PROTO_RESULT_OF< \
proto_generator( \
typename boost::proto::result_of::funop< \
Sig \
, proto_derived_expr \
, proto_domain \
>::type \
) \
>::type const \
type; \
}; \
/**/
- #ifndef BOOST_NO_VARIADIC_TEMPLATES
+ #ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES
#define BOOST_PROTO_EXTENDS_FUNCTION_CONST() \
BOOST_PROTO_EXTENDS_FUNCTION_() \
BOOST_PROTO_DEFINE_FUN_OP_VARIADIC_IMPL_(BOOST_PROTO_CONST) \
/**/
#define BOOST_PROTO_EXTENDS_FUNCTION_NON_CONST() \
BOOST_PROTO_EXTENDS_FUNCTION_() \
BOOST_PROTO_DEFINE_FUN_OP_VARIADIC_IMPL_(BOOST_PP_EMPTY) \
/**/
#define BOOST_PROTO_EXTENDS_FUNCTION() \
BOOST_PROTO_EXTENDS_FUNCTION_() \
BOOST_PROTO_DEFINE_FUN_OP_VARIADIC_IMPL_(BOOST_PP_EMPTY) \
BOOST_PROTO_DEFINE_FUN_OP_VARIADIC_IMPL_(BOOST_PROTO_CONST) \
/**/
#else
#define BOOST_PROTO_EXTENDS_FUNCTION_CONST() \
BOOST_PROTO_EXTENDS_FUNCTION_() \
BOOST_PP_REPEAT_FROM_TO( \
0 \
, BOOST_PROTO_MAX_FUNCTION_CALL_ARITY \
, BOOST_PROTO_DEFINE_FUN_OP_CONST \
, ~ \
) \
/**/
#define BOOST_PROTO_EXTENDS_FUNCTION_NON_CONST() \
BOOST_PROTO_EXTENDS_FUNCTION_() \
BOOST_PP_REPEAT_FROM_TO( \
0 \
, BOOST_PROTO_MAX_FUNCTION_CALL_ARITY \
, BOOST_PROTO_DEFINE_FUN_OP_NON_CONST \
, ~ \
) \
/**/
@@ -608,40 +608,40 @@ namespace boost { namespace proto
static expr<tag::terminal, term<Fun>, 0> const that = {Fun()};
return that;
}
};
/// INTERNAL ONLY
///
#define BOOST_PROTO_EXTENDS_MEMBER_(R, DOMAIN, ELEM) \
boost::proto::exprns_::virtual_member< \
proto_derived_expr \
, BOOST_PP_TUPLE_ELEM(2, 0, ELEM) \
, DOMAIN \
> BOOST_PP_TUPLE_ELEM(2, 1, ELEM); \
/**/
/// \brief For declaring virtual data members in an extension class.
///
#define BOOST_PROTO_EXTENDS_MEMBERS_WITH_DOMAIN(SEQ, DOMAIN) \
union \
{ \
char proto_member_union_start_; \
BOOST_PP_SEQ_FOR_EACH(BOOST_PROTO_EXTENDS_MEMBER_, DOMAIN, SEQ) \
}; \
/**/
/// \brief For declaring virtual data members in an extension class.
///
#define BOOST_PROTO_EXTENDS_MEMBERS(SEQ) \
BOOST_PROTO_EXTENDS_MEMBERS_WITH_DOMAIN(SEQ, proto_domain) \
/**/
}
}}
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#if defined(_MSC_VER)
# pragma warning(pop)
#endif
#endif