Boost logo

Boost :

From: Matthias Schabel (boost_at_[hidden])
Date: 2007-12-13 14:09:06


> Unfortunately not. I'm using a fairly recent snapshot of the trunk;
> version.hpp gives 103500. Boost is installed in the default
> location : /usr/local/include/boost-1_35, with a symlink to it in /
> usr/
> local/include/boost... I'll try checking out the latest trunk if you
> think that will help... I'm compiling on OS X 10.5.1, BTW.
>
> Matthias

Interestingly, if I change the #include to

#include <tr1/functional>

the code compiles under gcc but fails under icc with the following
error :

/usr/include/c++/4.0.0/tr1/bind_iterate.h(45): error: expression must
have (pointer-to-) function type
   { return _M_f(_GLIBCXX_BIND_V_ARGS); }
            ^
           detected during:
             instantiation of "std::tr1::result_of<_Functor
(std::tr1::result_of<std::tr1::_Mu<_T1,
std::tr1::is_bind_expression<_T1>::value, <expression>> (_T1,
std::tr1::tuple<_U1, std::tr1::_NullClass, std::tr1::_NullClass,
std::tr1::_NullClass, std::tr1::_NullClass, std::tr1::_NullClass,
std::tr1::_NullClass, std::tr1::_NullClass, std::tr1::_NullClass,
std::tr1::_NullClass>)>::type, std::tr1::result_of<std::tr1::_Mu<_T2,
std::tr1::is_bind_expression<_T2>::value, <expression>> (_T2,
                       std::tr1::tuple<_U1, std::tr1::_NullClass,
std::tr1::_NullClass, std::tr1::_NullClass, std::tr1::_NullClass,
std::tr1::_NullClass, std::tr1::_NullClass, std::tr1::_NullClass,
std::tr1::_NullClass, std::tr1::_NullClass>)>::type)>::type
std::tr1::_Bind<_Functor (_T1, _T2)>::operator()(_U1 &) [with
_Functor=double (mcs::SPGR::*)(double) const, _T1=const mcs::SPGR *,
_T2=std::tr1::_Placeholder<1>, _U1=double]" at line 488 of "/usr/
include/c++/4.0.0/tr1/functional_iterate.h"
             instantiation of "_Res std::tr1::_Function_handler<_Res
(_T1), _Functor>::_M_invoke(const std::tr1::_Any_data &, _T1) [with
_Res=double, _Functor=std::tr1::_Bind<double (mcs::SPGR::*(const
mcs::SPGR *, std::tr1::_Placeholder<1>))(double) const>, _T1=double]"
at line 850 of "/usr/include/c++/4.0.0/tr1/functional_iterate.h"
             instantiation of "std::tr1::function<_Res
(_T1)>::function(_Functor, std::__enable_if<std::tr1::function<_Res
(_T1)>::_Useless, <expression>>::__type) [with _Res=double,
_T1=double, _Functor=std::tr1::_Bind<double (mcs::SPGR::*(const
mcs::SPGR *, std::tr1::_Placeholder<1>))(double) const>]" at line 32
of "/Volumes/matthias.schabel/Code/main/test_icc_tr1_bind.cpp"

compilation aborted for /Volumes/matthias.schabel/Code/main/
test_icc_tr1_bind.cpp (code 2)

Matthias


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk