Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2001-12-05 10:25:47


----- Original Message -----
From: "p_michel_andre" <michel.andre_at_[hidden]>

> > My best guess is that it's just a compiler bug. You might try
> inserting the
> > following, just to see what type reference actually turns out to be:
> >
> > template <class T> struct undefined;
> >
> > and then, just before the assertion:
> >
> > undefined<reference> x;
> >
> > The error message should give you some idea of what's going on (I
> hope).
>
> template <class T, class Y, bool CONV, bool SAME> struct undefined;
> undefined<reference, value_type&,
> !
> boost::is_convertible<iterator_category*,std::forward_iterator_tag*>::
> value,
> boost::is_same<reference,value_type&>::value > x;
>
> Gives me
> boost\iterator_adaptors.hpp(627) : error C2079: 'x' uses undefined
> struct 'undefined<class OrderbookList &,class OrderbookList &,0,1>'
>
> So the expression should yield true.
>
> The iter_adaptors is because I'm using stlfilter which seems a bit
> agressive about shortening names (iterator -> iter) ;).

Seems like a VC6 compiler bug. I guess you could disable the assertion.
Jason, care to take a look at this one?

-Dave


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk