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.