favor of a common interface. Regardless of the compiler's capabilities, the
result type of a Boost.Function function object that was declared void will
be "unused". This allows the result of a Boost.Function function object to
be passed as a parameter regardless of whether the function is declared as
returning void. It greatly simplifies the use of Boost.Function objects with
wrapper objects (i.e., when the side effects are important, but the result
isn't: consider binding and composition when calling a std::for_each loop)
[SVN r10491]
- Redesigned decision procedure for "is it a function pointer" vs.
"is it an object".
- No longer requires copy constructions of function objects during
assignment or construction.
- Added operator! to boost::function_base instead of relying on
safe_bool conversion.
- BOOST_NO_DEPENDENT_BASE_LOOKUP is now unnecessary
- BOOST_WEAK_CONVERSION_OPERATORS is now unnecessary
- BOOST_WEAK_FUNCTION_TEMPLATE_ORDERING is now unnecessary
[SVN r10481]