https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112490
Bug ID: 112490 Summary: infinite meta error in reverse_iterator<basic_const_iterator<vector<int>::ite rator>> Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: hewillk at gmail dot com Target Milestone: --- #include <iterator> #include <vector> using I = std::vector<int>::iterator; using CI = std::basic_const_iterator<I>; using RCI = std::reverse_iterator<CI>; static_assert(std::totally_ordered<RCI>); https://godbolt.org/z/14zsETc4d The fact that libc++ does not generate an error suggests that this may be a language bug. Not sure where the real issue here, I will reduce it when I have time.