$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Howard Hinnant (hinnant_at_[hidden])
Date: 2005-12-11 14:52:32
On Dec 11, 2005, at 10:49 AM, Arkadiy Vertleyb wrote:
> Then is it possible to take a look inside, and see what is so  
> specific about
> binder "extension" that causes the problem with this particular  
> templates?
Peter hit the nail on the head (as usual).
> Unless the compiler has a bug, the only explanation is nonstandard  
> default
> arguments.
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.
-Howard