Boost logo

Boost :

Subject: [boost] [phoenix] conflicts between result_of namespace and result_of class.
From: Vicente Botet (vicente.botet_at_[hidden])
Date: 2011-05-25 11:04:18


Hi,

I have found an error when we define new phoenix expression inside boost
namespace.

The following

#include <boost/phoenix/core/limits.hpp>
#include <boost/phoenix/core/call.hpp>
#include <boost/phoenix/core/expression.hpp>
#include <boost/phoenix/core/meta_grammar.hpp>
#include <boost/phoenix/object/detail/target.hpp>
#include <boost/proto/transform/lazy.hpp>
#include <boost/phoenix/core/is_actor.hpp>

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

results in

darwin.compile.c++
../../../bin.v2/libs/conversion_ext/test/builtins.test/darwin-4.2.1/debug/builtins.o
builtins.cpp:19: error: ‘namespace boost::result_of { }’ redeclared as
different kind of symbol
../../../boost/utility/result_of.hpp:35: error: previous declaration of
‘template<class F> struct boost::result_of’
builtins.cpp:19: error: ‘template<class F> struct boost::result_of’ used
without template parameters
builtins.cpp:19: error: expected unqualified-id before ‘<’ token

It seems that the Phoenix result_of protocol and the utility result_of
conflicts.

Is this a real issue?

Best,
Vicente

--
View this message in context: http://boost.2283326.n4.nabble.com/phoenix-conflicts-between-result-of-namespace-and-result-of-class-tp3549976p3549976.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

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