Re: fusion vector, spirit, phoenix actor and forwarding constructor

MM <[email protected]>
Newsgroups gmane.comp.parsers.spirit.general
Message-ID <CADsB1iBfQ5dC6NqniS442OW+R0CgkzZaWcK=dZtW4rkLEdbZLQ@mail.gmail.com>
On 14 July 2016 at 12:11, MM <[email protected]> wrote:

>
>
> On 14 July 2016 at 02:23, Lee Clagett <[email protected]> wrote:
> > On Tue, 12 Jul 2016 20:49:31 +0100 MM <[email protected]> wrote:
> >> Hello,
> >>
> >> In this user constructor for struct store in
> >> /usr/include/boost/fusion/container/vector/vector.hpp:175:44
> >>
> >>             template <typename U>
> >>             BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
> >>             store(U&& rhs
> >>                 , typename disable_if<is_same<typename pure<U>::type,
> >> store>, detail::enabler_>::type = detail::enabler)
> >>                 : elem(std::forward<U>(rhs))
> >> <= error is here
> >>             {}
> >>
> >> type of rhs is:
> >>    const boost::phoenix::actor<boost::spirit::attribute<1> >&
> >>
> >> the compiler meets this error:
> >>
> >> no matching function for call to
> >> ‘boost::phoenix::actor<boost::spirit::attribute<1> >::actor(const
> >> boost::spirit::attribute<1>&)’
> >>
> >> candidates are the default ctor,
> >> 1) constexpr boost::phoenix::actor<boost::spirit::attribute<1>
> >> >::actor()
> >>
> >> and the copy constructor
> >> 2) constexpr boost::phoenix::actor<boost::spirit::attribute<1>
> >> >::actor(const boost::phoenix::actor<boost::spirit::attribute<1> >&)
> >>
> >> This seems to be a problem only for >=c++11, also, it was ok with
> >> 1.58, but not now with develop.
> >>
> >> I haven't managed to extract a small reproducible case yet, and but
> >> i'll keep trying.
> >>
> >> Thanks,
> >>
> >> MM
> >>
>
> All compiled with g++6 c++11
> > Does it work with Boost 1.61?
> It hasn't work with vanilla boost 1.60 from my distro
>
> > or the master branch?
>
> > Or is it only broken on the develop branch?
> It is broker in develop branch, but I am guilty of mix and match, so
> apologies for that,
> I only took  boost 1.60 vanilla, and replaced phoenix spirit and fusion as
> links to the develop branch.
> I will try again with entire boost develop, then with entire boost master.
> Should I try with 1.61 vanilla as well?
>
> I suppose I'd need to clone the entire boost repo, then switch branches
> between master and develop
>
> is that git clone https://github.com/boostorg/boost.git
>
> for now I only have clones of fusion phoenix and spirit.
>
> While trying to make a smaller case, I've ran into I suppose a separate
> problem (likely unrelated) here:
>
> https://stackoverflow.com/questions/38372392/boost-phoenix-eval-failures
>
> The line closest to my real-code line that triggers the error above is:
>
> start_ %= g2_(_r1);
>
> Lee, here is a more complete stack that gets triggered from my real code:
>
> startrule %= start(_r1);
> qis::rule<Iterator, T*(T*), qis::blank_type> startrule;
> qis::rule<Iterator, T*(T*), qis::locals<X*>, qis::blank_type> start;
> /// where T and X are my application types.
> The error stack is here:
>
> http://paste.fedoraproject.org/391037/46849462
> http://paste.fedoraproject.org/391037/46849462
> Lee, let me know what to test please? Thanks
>
>
> MM
>

I managed to have a reproducible case and I updated the
https://stackoverflow.com/questions/38372392/boost-phoenix-eval-failures
with the code.

Thanks
MM

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev

_______________________________________________
Spirit-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/spirit-general
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.