http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51823
--- Comment #14 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-10-31 00:36:48 UTC --- Thanks, Dave. So IIUC that means a counting iterator or other iterator that stores a value internally can only be an input iterator, and so can't be used with reverse_iterator.