
"Howard Hinnant" <hinnant@twcny.rr.com> wrote
template <class Operation, class T = typename Metrowerks::remove_reference<Operation>::type::first_argument_type> class binder1st ...
It is wrapped in:
#ifdef _MSL_EXTENDED_BINDERS
with the standard version in the #else. _MSL_EXTENDED_BINDERS is defined by default in <mslconfig> which every CodeWarrior std C++ header includes.
The intent was to create a binder1st that could hold the operation by reference if desired in order to avoid copies of expense-to-copy predicates (such as those holding a container to compare to). tr1::ref is probably a better solution to that problem, as is tr1::bind. Consider this a failed experiment on my part.
Thanks a lot for this information. Although failed the experiment might be, I'll have to find a workaround for this... I assume if I supply the second argument, it should be fine: typedef binder1st<int, int> type; (I will know once the next regression runs) Regards, Arkadiy