summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/type_traits/has_new_operator.hpp')
-rw-r--r--3rdParty/Boost/src/boost/type_traits/has_new_operator.hpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/3rdParty/Boost/src/boost/type_traits/has_new_operator.hpp b/3rdParty/Boost/src/boost/type_traits/has_new_operator.hpp
index 2c2c322..c615127 100644
--- a/3rdParty/Boost/src/boost/type_traits/has_new_operator.hpp
+++ b/3rdParty/Boost/src/boost/type_traits/has_new_operator.hpp
@@ -18,6 +18,16 @@
// should be the last #include
#include <boost/type_traits/detail/bool_trait_def.hpp>
+#if defined(new)
+# if BOOST_WORKAROUND(BOOST_MSVC, >= 1310)
+# define BOOST_TT_AUX_MACRO_NEW_DEFINED
+# pragma push_macro("new")
+# undef new
+# else
+# error "Sorry but you can't include this header if 'new' is defined as a macro."
+# endif
+#endif
+
namespace boost {
namespace detail {
template <class U, U x>
@@ -135,6 +145,10 @@ BOOST_TT_AUX_BOOL_TRAIT_DEF1(has_new_operator,T,::boost::detail::has_new_operato
} // namespace boost
+#if defined(BOOST_TT_AUX_MACRO_NEW_DEFINED)
+# pragma pop_macro("new")
+#endif
+
#include <boost/type_traits/detail/bool_trait_undef.hpp>
#endif // BOOST_TT_HAS_NEW_OPERATOR_HPP_INCLUDED