Boost logo

Boost :

Subject: Re: [boost] [phoenix] conflicts between result_of namespace and result_of class.
From: Thomas Heller (thom.heller_at_[hidden])
Date: 2011-05-25 13:05:52


On Wed, May 25, 2011 at 5:04 PM, Vicente Botet <vicente.botet_at_[hidden]> wrote:
> Hi,
>
> I have found an error when we define new phoenix expression inside boost
> namespace.
>
> The following
>
<snip>
>
> BOOST_PHOENIX_DEFINE_EXPRESSION(  // line 19
>    (boost)(convert_to)
>  , (proto::terminal<boost::phoenix::detail::target<proto::_> >)
>    (boost::phoenix::meta_grammar)
> )
>
<snip>
> It seems that the Phoenix result_of protocol and the utility result_of
> conflicts.
>
> Is this a real issue?

No I don't think so. Why does this need to in the boost namespace in
the first place?

make it:
BOOST_PHOENIX_DEFINE_EXPRESSION( // line 19
   (boost)(convert)(convert_to)
 , (proto::terminal<boost::phoenix::detail::target<proto::_> >)
   (boost::phoenix::meta_grammar)
)

namespace boost
{
    using convert::convert_to;
}

I don't know what currently is considered best practice, but isn't it
considered bad to put
stuff directly in the boost namespace?

If it isn't, what are the general rules of when something is
considered for being resident in the boost
namespace?

Regards,
Thomas


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