
Hi all.
I'm having difficulty understanding why the code listed below is not
compiling (at least not on my box, gcc-4.3.2 / boost 1.38). (the code
has been stripped and simplified for demonstration).
Context:
I have an interface and a model providing an implementation of this
interface. I use a concept to make sure
that the model provides a member function "foo" of a specific
signature (whether doind it this way is useful or not, is not the
point).
In the example below, the member function "foo" should accept one
parameter. This parameter should be of type
"boost::fusion::sequence_base<SequenceT> const&".
Except, when compiling the compiler informs me: invalid use of incomplete type
‘struct boost::fusion::extension::begin_implboost::fusion::non_fusion_tag::apply

AMDG Pieter Op de Beeck wrote:
// simplified concept that requires from the model a member function 'foo' taking in a fusion:sequence_base template
struct concept { template void model_requires_foo();
This doesn't work for list because fusion::list inherits from
sequence_base >
In Christ,
Steven Watanabe
participants (2)
-
Pieter Op de Beeck
-
Steven Watanabe