On 12/24/2010 1:57 PM, Hartmut Kaiser wrote: >> Just because a type is a Fusion sequence, that doesn't mean it has >> boost::fusion as an associated namespace. I'm asking why >> boost::fusion::operator< is in the overload set. > > Ohh, sorry, I misunderstood. That's a good question indeed. However, I have > no answer, yet.
I know why: template < typename Iterator , typename T1 = unused_type , typename T2 = unused_type , typename T3 = unused_type , typename T4 = unused_type > struct rule And in support/unused.hpp: using boost::fusion::unused_type; Your use of fusion::unused_type is making boost::fusion an associated namespace of qi::rule. I suggest eliminating this needless reuse, or else use an ADL barrier namespace around Fusion's unused_type definition. -- Eric Niebler BoostPro Computing http://www.boostpro.com _______________________________________________ proto mailing list proto@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/proto