From dc1e4dbfae0921cea61c5d644ba137e02cc5dfc8 Mon Sep 17 00:00:00 2001 From: Frank Mori Hess Date: Tue, 14 Apr 2009 13:45:59 +0000 Subject: [PATCH] Use static boost::arg placeholders for gcc 4.0.1, since it has a bug that prevents forwarding placeholders as const references when using the static inline function placeholders. [SVN r52384] --- include/boost/bind/placeholders.hpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/include/boost/bind/placeholders.hpp b/include/boost/bind/placeholders.hpp index 43baee6..37d01db 100644 --- a/include/boost/bind/placeholders.hpp +++ b/include/boost/bind/placeholders.hpp @@ -25,7 +25,7 @@ namespace { -#if defined(__BORLANDC__) || defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__ <= 400) +#if defined(__BORLANDC__) || defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__ < 400) static inline boost::arg<1> _1() { return boost::arg<1>(); } static inline boost::arg<2> _2() { return boost::arg<2>(); } @@ -37,7 +37,8 @@ static inline boost::arg<7> _7() { return boost::arg<7>(); } static inline boost::arg<8> _8() { return boost::arg<8>(); } static inline boost::arg<9> _9() { return boost::arg<9>(); } -#elif defined(BOOST_MSVC) || (defined(__DECCXX_VER) && __DECCXX_VER <= 60590031) || defined(__MWERKS__) +#elif defined(BOOST_MSVC) || (defined(__DECCXX_VER) && __DECCXX_VER <= 60590031) || defined(__MWERKS__) || \ + defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__ == 400) static boost::arg<1> _1; static boost::arg<2> _2;