From ba117db120ec53a94330ce349ce4c1f9bf5de1eb Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Sat, 7 Dec 2013 18:53:01 +0200 Subject: [PATCH] Revert "Bind: Remove obsolete GCC version check." This reverts commit 5b2cf44de5d7e4d5b024c073a3089fffd8e67731. --- include/boost/bind/bind.hpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/include/boost/bind/bind.hpp b/include/boost/bind/bind.hpp index 7f45242..957974d 100644 --- a/include/boost/bind/bind.hpp +++ b/include/boost/bind/bind.hpp @@ -1211,6 +1211,27 @@ BOOST_BIND_OPERATOR( ||, logical_or ) #undef BOOST_BIND_OPERATOR +#if defined(__GNUC__) && BOOST_WORKAROUND(__GNUC__, < 3) + +// resolve ambiguity with rel_ops + +#define BOOST_BIND_OPERATOR( op, name ) \ +\ +template \ + bind_t< bool, name, list2< bind_t, bind_t > > \ + operator op (bind_t const & f, bind_t const & g) \ +{ \ + typedef list2< bind_t, bind_t > list_type; \ + return bind_t ( name(), list_type(f, g) ); \ +} + +BOOST_BIND_OPERATOR( !=, not_equal ) +BOOST_BIND_OPERATOR( <=, less_equal ) +BOOST_BIND_OPERATOR( >, greater ) +BOOST_BIND_OPERATOR( >=, greater_equal ) + +#endif + // visit_each, ADL #if !defined( BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP ) && !defined( __BORLANDC__ ) \