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