------- Comment #33 from redi at gcc dot gnu dot org 2010-05-27 11:54 ------- Alisdair checks for Iterator::iterator_category, which seems a very sensible way of checking if a type wants to be recognised by iterator_traits
If iterator_category exists, then assume difference_type and the other nested types do too. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40497