Boost logo

Boost :

From: Larry Evans (cppljevans_at_[hidden])
Date: 2005-03-04 12:41:40

On 03/01/2005 08:25 AM, David Abrahams wrote:
>>template<typename Sequence, typename Start, typename ForwardOp>
>>struct end<fold<Sequence,Start,ForwardOp>::type>
>>which is doomed to fail (AFAICT) because of the non-deduced
>>Or am I missing something again?
> Forget about fold. It's just a metafunction that _you_ happen to be
> using to build the eventual sequence type. The fold algorithm has
> nothing to do with building sequences, intrinsically, just as
> std::accumulate (its analogue) has nothing to do with any particular
> job. You need to focus on the class of types that gets built by your
> code and stop looking at fold.

The code in vault under cppljevans/mpl/ works for
gcc, and the intel problem is due to an intel bug AFAICT. This
bug has been reported to intel as issue 287414. The workaround
is just to define:

template<class Left,class Right>
void print_integral_c::operator()(my_node<Left,Right>)const

Boost list run by bdawes at, gregod at, cpdaniel at, john at