Boost logo

Boost Users :

From: Noah Roberts (roberts.noah_at_[hidden])
Date: 2006-11-01 14:27:51


My statement:

  T::iterator it = std::find_if(container.begin(), container.end(),
        l::bind(&typename T::value_type::GetName, l::_1) != l::constant(0)
     && !l::bind(stricmp, l::bind(&typename T::value_type::GetName,
l::_1), l::var(name)));

GetName() returns a char*.

I get errors about there being no != or ! for const
boost::lambda::lambda_functor<T> I also tried == 0 and == constant(0)
for the second part.

More detailed error follows:

1>c:\documents and settings\nroberts\my documents\visual studio
2005\projects\pipeflo refactor\code\clist_util.h(60) : error C2678:
binary '!=' : no operator found which takes a left-hand operand of
type 'const boost::lambda::lambda_functor<T>' (or there is no
acceptable conversion)
1> with
1> [
1> T=boost::lambda::lambda_functor_base<boost::lambda::action<2,boost::lambda::function_action<2>>,boost::tuples::tuple<char
*(__thiscall NamedObject::* const )(void),const
boost::lambda::lambda_functor<boost::lambda::placeholder<1>>,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type>>
1> ]
1> c:\program files\microsoft visual studio
8\vc\platformsdk\include\guiddef.h(197): could be 'int operator
!=(const GUID &,const GUID &)'
1> while trying to match the argument list '(const
boost::lambda::lambda_functor<T>, boost::lambda::lambda_functor<T>)'
1> with
1> [
1> T=boost::lambda::lambda_functor_base<boost::lambda::action<2,boost::lambda::function_action<2>>,boost::tuples::tuple<char
*(__thiscall NamedObject::* const )(void),const
boost::lambda::lambda_functor<boost::lambda::placeholder<1>>,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type,boost::lambda::detail::bind_traits<boost::tuples::null_type>::type>>
1> ]
1> and
1> [
1> T=boost::lambda::identity<const int>
1> ]
1> c:\documents and settings\nroberts\my documents\visual
studio 2005\projects\pipeflo refactor\code\clist.h(358) : see
reference to function template instantiation 'bool
NameInUse<CList_tmpl<VALUE_TYPE>>(T &,const char *,DLinkObject
*,HWND)' being compiled
1> with
1> [
1> VALUE_TYPE=DLinkObject,
1> T=CList_tmpl<DLinkObject>
1> ]
1> c:\documents and settings\nroberts\my documents\visual
studio 2005\projects\pipeflo refactor\code\clist.h(357) : while
compiling class template member function 'bool
CList_tmpl<VALUE_TYPE>::NameInUse(char *,VALUE_TYPE *,HWND)'
1> with
1> [
1> VALUE_TYPE=DLinkObject
1> ]
1> c:\documents and settings\nroberts\my documents\visual
studio 2005\projects\pipeflo refactor\code\lineupchangeable.h(13) :
see reference to class template instantiation 'CList_tmpl<VALUE_TYPE>'
being compiled
1> with
1> [
1> VALUE_TYPE=DLinkObject
1> ]


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net