|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2002-10-07 06:42:33
"Dale" <dale.peakall_at_[hidden]> writes:
> Compiler: GCC 3.1
> Boost Version: 1.28.0
>
> If you attempt to instantiate an iterator adaptor over a non-iterator type
> and just specify Base, Policies, Value and then use named parameters for
> Category and Distance the iterator adaptor class attempts to instantiate
> std::iterator_traits over the base class... which fails as the base class
> doesn't define any of the appropriate typedefs.
>
> Specifying all the parameters (without using named template paramters)
> solves
> the problem.
>
> However, the documentation suggests that if you specify Value, Reference and
> Pointer should default to Value& and Value* rather than using
> std::iterator_traits.
>
> Perhaps they do, but it doesn't help if it still tries to instantiate
> iterator_traits.
Good point. Jeremy and I are going to be working on a complete
redesign of the library later this month, so we'll try not to put the
same bug in the new version ;-)
-- David Abrahams * Boost Consulting dave_at_[hidden] * http://www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk