Boost logo

Proto :

Subject: Re: [proto] Using a derived class as terminals in Boost.proto
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2016-04-14 13:00:59


On 14 April 2016 at 15:37, Frank Winter <fwinter_at_[hidden]> wrote:

>
> and still, I get basically the same error message:
>
> /home/fwinter/src/boost_1_60_0/boost/proto/context/default.hpp:121:41:
> error: no match for ‘operator+’ (operand types are ‘Vector10’ and
> ‘Vector10’)
> BOOST_PROTO_BINARY_DEFAULT_EVAL(+, proto::tag::plus, make, make)
>
>
> It's weird since the operator+ should be there for Vector, and since I am
> importing the namespace VectorOps, it should work for derived classes. I
> don't see why it's not working.

A recent enough compiler should tell you which candidates it tried and why
they were removed due to SFINAE.
I don't have the time to try out your code at the moment but I recommend
you try to take a look at this.



Proto list run by eric at boostpro.com