- Use "self_type" instead of "function" for constructing swapping temporary (Borland C++ needs it)
function_base.hpp:
- Give empty copy constructor, default constructor, and assignment operator to empty_function_mixin (MSVC generates incorrect ones)
function_template.hpp:
- Make Borland C++ and MSVC agree on the code (involves an extra constructor definition and careful use of self_type vs. BOOST_FUNCTION_FUNCTION)
[SVN r10619]
- Use swap() for exception safe assignment operators
function_template.hpp:
- Use swap() for exception safe assignment operators
- Remove BOOST_FUNCTION_BASE class.
- Support copying of mixins. (Richard Crossley)
[SVN r10614]
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]