Boost logo

Boost :

From: Aleksey Gurtovoy (agurtovoy_at_[hidden])
Date: 2004-10-13 13:56:11


Larry Evans writes:
>
> I tried a global replace of apply_if with eval_if; however, I got:
> <--------------------
>
> intel-linux.compile.c++
> ../../../../bin.v2/lje/libs/managed_ptr/test/intel-linux/debug/smart_ptr_test.o
> ../../../boost/managed_ptr/smart_ptr.hpp(204): error: class
> "boost::mpl::eval_if<boost::mpl::bool_<false>::type,
> boost::mpl::identity<boost::ref_counted<boost::mpl::_>>,
>
boost::detail::get_policy<boost::mpl::list<boost::managed_ptr::refcycle_counted_curry_prox_visitor<boost::managed_ptr::refcycle_prox
_visitor_abs::this_type>::owner_refptr<boost::mpl::_>,
> boost::empty_policy, boost::empty_policy, boost::empty_policy,
> boost::mpl::na, boost::mpl::na, boost::mpl::na, boost::mpl::na,
> boost::mpl::na,
> boost::mpl::na, boost::mpl::na, boost::mpl::na,
> boost::mpl::na, boost::mpl::na, boost::mpl::na, boost::mpl::na,
> boost::mpl::na, boost::mpl::na, boost::mpl::na, boost::mpl::na>,
> boost::ownership_policy_tag, boost::ref_counted<boost::mpl::_>>::iter_>"
> has no member "type"
> >::type type;
> ^

Larry, this is not related to "apply_if" renaming, but rather to changes
in the MPL's iterator protocol --
http://www.mywikinet.com/mpl/mpl_1_32_changelog/iterator-protocol.html.

In particular, every place where you're dereferencing MPL iterators via
'::type' needs to be re-written using 'mpl::deref' metafunction, as per
cited document.

HTH,

--
Aleksey Gurtovoy
MetaCommunications Engineering

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