Boost logo

Boost Users :

Subject: Re: [Boost-users] [Proto] Bug in 1.40 : uncomplete type in matches
From: joel (joel.falcou_at_[hidden])
Date: 2009-10-25 14:01:44


joel wrote:
> I just switched from 39 to 40 and my proto code that was working
> doesn't anymore.
> I define a grammar that matches any terminal, any nary functions
> except for address_of and comma like this :
>
> struct grammar
> : bp::or_< bp::terminal< block<bp::_,bp::_> >
> , meta::lambda_term< boost::is_arithmetic >
> , bp::and_< bp::nary_expr< bp::_, bp::vararg< grammar > >
> , bp::not_< meta::low_level<bp::_> >
> , bp::not_< meta::stream<bp::_,bp::_> >
> >
> > {};
Oh and of course the missing ones :

    template<class Grammar>
    struct low_level
         : boost::proto::or_< boost::proto::address_of<Grammar>
                            , boost::proto::dereference<Grammar>
                            , boost::proto::comma<Grammar,Grammar>
> {};

    template<class Left, class Right>
    struct stream
         : boost::proto::or_< boost::proto::shift_left<Left,Right>
                            , boost::proto::shift_right<Left,Right>
> {};

Sorry for the noise

-- 
___________________________________________
Joel Falcou - Assistant Professor
PARALL Team - LRI - Universite Paris Sud XI
Tel : (+33)1 69 15 66 35

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net