trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: July 2012

Re: [trinity-devel] krusader - still ftbfs-> no type named 'iterator_category'

From: "David C. Rankin" <drankinatty@...>
Date: Fri, 20 Jul 2012 00:50:04 -0500
On 07/15/2012 12:43 AM, David C. Rankin wrote:
> Tim, Darrell, All,
> 
>   krusader still fails to build and gives a template error. With gcc 4.7.0 the
> thought was maybe it was a gcc issue. Now we are on 4.7.1 and the gcc bugs
> should be pretty much worked out. However, I still get the iterator error in
> 'class TQValueListConstIterator<KURL>'. I know nothing about the template
> classes, so this will be impossible for me to debug. Need help. The full error is:
> 
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_iterator_base_types.h:
> In instantiation of 'struct std::iterator_traits<TQValueListConstIterator<KURL> >':
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_iterator_base_types.h:202:5:
>   required by substitution of 'template<class _Iter> typename
> std::iterator_traits::iterator_category std::__iterator_category(const _Iter&)
> [with _Iter = TQValueListConstIterator<KURL>]'
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_algo.h:4490:41:
>   required from '_IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter =
> TQValueListConstIterator<KURL>; _Predicate =
> std::unary_negate<std::const_mem_fun_ref_t<bool, KURL> >]'
> expander.cpp:674:102:   required from here
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_iterator_base_types.h:166:53:
> error: no type named 'iterator_category' in 'class TQValueListConstIterator<KURL>'
> In file included from
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/algorithm:63:0,
>                  from expander.cpp:13:
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_algo.h:
> In instantiation of '_IIter std::find_if(_IIter, _IIter, _Predicate) [with
> _IIter = TQValueListConstIterator<KURL>; _Predicate =
> std::unary_negate<std::const_mem_fun_ref_t<bool, KURL> >]':
> expander.cpp:674:102:   required from here
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_algo.h:4490:41:
> error: no matching function for call to
> '__iterator_category(TQValueListConstIterator<KURL>&)'
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_algo.h:4490:41:
> note: candidate is:
> In file included from
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_algobase.h:66:0,
>                  from
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/algorithm:62,
>                  from expander.cpp:13:
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_iterator_base_types.h:202:5:
> note: template<class _Iter> typename std::iterator_traits::iterator_category
> std::__iterator_category(const _Iter&)
> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_iterator_base_types.h:202:5:
> note:   substitution of deduced template arguments resulted in errors seen above
> 
> 

Guys,

  These template errors seem to point back to the TQValueList... template stuff
that I'm having a bit more trouble with. As with kima, this looks like it might
be a simple missing include as in 'kima' (#include <list>). But, what include
would go along with __iterator_category(TQValueListConstIterator<KURL>&)?? Is
there an (#include <iterator>) STL include?

-- 
David C. Rankin, J.D.,P.E.