
Peter Dimov wrote:
reference_wrapper::operator() needs result_of, and result_of would likely introduce a dependency into Boost.Bind on the PP library, the MPL, type traits, and everything underneath. The change may be worth it even at this cost, but it's not a no-brainer. It might be nicer if we could devise a way to deliver this functionality in a cost-free manner though, perhaps only in tr1::reference_wrapper?
One 'cheap' solution might be to enable it for compilers implementing C++0x features. For instance, decltype and variadic templates would appear to solve most the dependency dependency and PP problems - although I'm not sure what is involved in adding support for unary_function/binary_function dependency for one and two argument functions. -- AlisdairM