From 315ad7d60dca5ef0270d8fa081ed722ddde97326 Mon Sep 17 00:00:00 2001 From: Aleksey Gurtovoy Date: Fri, 2 Jul 2010 08:59:55 +0000 Subject: [PATCH] Merged revisions 59248 via svnmerge from https://svn.boost.org/svn/boost/trunk ........ r59248 | agurtovoy | 2010-01-23 23:45:36 -0600 (Sat, 23 Jan 2010) | 1 line Fix bitand/bitor conflicts with iso64.h header ........ [SVN r63520] --- include/boost/mpl/bitand.hpp | 24 +++++++++++++++++++++++- include/boost/mpl/bitor.hpp | 24 +++++++++++++++++++++++- 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/include/boost/mpl/bitand.hpp b/include/boost/mpl/bitand.hpp index 2d6790d..0e9f1c8 100644 --- a/include/boost/mpl/bitand.hpp +++ b/include/boost/mpl/bitand.hpp @@ -2,7 +2,7 @@ #ifndef BOOST_MPL_BITAND_HPP_INCLUDED #define BOOST_MPL_BITAND_HPP_INCLUDED -// Copyright Aleksey Gurtovoy 2000-2004 +// Copyright Aleksey Gurtovoy 2000-2009 // Copyright Jaap Suter 2003 // // Distributed under the Boost Software License, Version 1.0. @@ -15,9 +15,31 @@ // $Date$ // $Revision$ +// agurt, 23/jan/10: workaround a conflict with header's +// 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) +#ifndef __GCCXML__ +#if defined(bitand) +# pragma push_macro("bitand") +# undef bitand +# define bitand(x) +#endif +#endif +#endif + #define AUX778076_OP_NAME bitand_ #define AUX778076_OP_PREFIX bitand #define AUX778076_OP_TOKEN & #include +#if defined(_MSC_VER) +#ifndef __GCCXML__ +#if defined(bitand) +# pragma pop_macro("bitand") +#endif +#endif +#endif + #endif // BOOST_MPL_BITAND_HPP_INCLUDED diff --git a/include/boost/mpl/bitor.hpp b/include/boost/mpl/bitor.hpp index 2a401ab..4333253 100644 --- a/include/boost/mpl/bitor.hpp +++ b/include/boost/mpl/bitor.hpp @@ -2,7 +2,7 @@ #ifndef BOOST_MPL_BITOR_HPP_INCLUDED #define BOOST_MPL_BITOR_HPP_INCLUDED -// Copyright Aleksey Gurtovoy 2000-2004 +// Copyright Aleksey Gurtovoy 2000-2009 // Copyright Jaap Suter 2003 // // Distributed under the Boost Software License, Version 1.0. @@ -15,9 +15,31 @@ // $Date$ // $Revision$ +// agurt, 23/jan/10: workaround a conflict with header's +// 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) +#ifndef __GCCXML__ +#if defined(bitor) +# pragma push_macro("bitor") +# undef bitor +# define bitor(x) +#endif +#endif +#endif + #define AUX778076_OP_NAME bitor_ #define AUX778076_OP_PREFIX bitor #define AUX778076_OP_TOKEN | #include +#if defined(_MSC_VER) +#ifndef __GCCXML__ +#if defined(bitor) +# pragma pop_macro("bitor") +#endif +#endif +#endif + #endif // BOOST_MPL_BITOR_HPP_INCLUDED