
On 09/20/2010 08:04 PM, joel falcou wrote:
then it'll work.
Sorry, I need to ask again: // ------------------------------------------------- #include<boost/proto/proto.hpp> using namespace boost; typedef proto::terminal<proto::_>::type terminal; struct addition: proto::or_ < terminal, proto::plus<addition, addition> > {}; struct equation: proto::or_ < proto::equal_to<addition, addition> > {}; template<class Expr> struct extension; struct my_domain : proto::domain< proto::pod_generator< extension> , equation > {}; template<class Expr> struct extension { BOOST_PROTO_EXTENDS( Expr , extension<Expr> , my_domain ) }; int main() { extension<proto::terminal<int>::type> i; i == i; // Error } // ------------------------------------------------- I know it has to be obvious, but I just can't see it... Regards, Roland