diff --git a/source/iterators.tex b/source/iterators.tex
index dbd9d44930..c334b8f81f 100644
--- a/source/iterators.tex
+++ b/source/iterators.tex
@@ -1254,24 +1254,22 @@
 \tcode{Iterator}
 shall meet the requirements of a random access iterator\iref{random.access.iterators}
 if any of the members
-\tcode{operator+}~(\ref{reverse.iter.op+}),
-\tcode{operator-}~(\ref{reverse.iter.op-}),
-\tcode{operator+=}~(\ref{reverse.iter.op+=}),
-\tcode{operator-=}~(\ref{reverse.iter.op-=}),
-\tcode{operator[]}\iref{reverse.iter.opindex},
-or the non-member operators
-\tcode{operator<}~(\ref{reverse.iter.op<}),
-\tcode{operator>}~(\ref{reverse.iter.op>}),\\
-\tcode{operator<=}~(\ref{reverse.iter.op<=}),
-\tcode{operator>=}~(\ref{reverse.iter.op>=}),
-\tcode{operator-}\iref{reverse.iter.opdiff}
+\tcode{operator+},
+\tcode{operator-},
+\tcode{operator+=},
+\tcode{operator-=}\iref{reverse.iter.nav},
+\tcode{operator[]}\iref{reverse.iter.elem},
+or the non-member operators\iref{reverse.iter.cmp}
+\tcode{operator<},
+\tcode{operator>},
+\tcode{operator<=},
+\tcode{operator>=},
+\tcode{operator-},
 or
-\tcode{operator+}\iref{reverse.iter.opsum}
+\tcode{operator+}\iref{reverse.iter.nonmember}
 are referenced in a way that requires instantiation\iref{temp.inst}.
 
-\rSec3[reverse.iter.ops]{\tcode{reverse_iterator} operations}
-
-\rSec4[reverse.iter.cons]{\tcode{reverse_iterator} constructor}
+\rSec3[reverse.iter.cons]{\tcode{reverse_iterator} construction and assignment}
 
 \indexlibrary{\idxcode{reverse_iterator}!constructor}%
 \begin{itemdecl}
@@ -1315,8 +1313,6 @@
 \tcode{u.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op=]{\tcode{reverse_iterator::operator=}}
-
 \indexlibrarymember{operator=}{reverse_iterator}%
 \begin{itemdecl}
 template<class U>
@@ -1334,7 +1330,7 @@
 \tcode{*this}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.conv]{Conversion}
+\rSec3[reverse.iter.conv]{Conversion}
 
 \indexlibrarymember{base}{reverse_iterator}%
 \begin{itemdecl}
@@ -1347,7 +1343,7 @@
 \tcode{current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op.star]{\tcode{operator*}}
+\rSec3[reverse.iter.elem]{\tcode{reverse_iterator} element access}
 
 \indexlibrarymember{operator*}{reverse_iterator}%
 \begin{itemdecl}
@@ -1365,8 +1361,6 @@
 
 \end{itemdescr}
 
-\rSec4[reverse.iter.opref]{\tcode{operator->}}
-
 \indexlibrarymember{operator->}{reverse_iterator}%
 \begin{itemdecl}
 constexpr pointer operator->() const;
@@ -1377,7 +1371,40 @@
 \returns \tcode{addressof(operator*())}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op++]{\tcode{operator++}}
+\indexlibrarymember{operator[]}{reverse_iterator}%
+\begin{itemdecl}
+constexpr @\unspec@ operator[](difference_type n) const;
+\end{itemdecl}
+
+\begin{itemdescr}
+\pnum
+\returns
+\tcode{current[-n-1]}.
+\end{itemdescr}
+
+\rSec3[reverse.iter.nav]{\tcode{reverse_iterator} navigation}
+
+\indexlibrarymember{operator+}{reverse_iterator}%
+\begin{itemdecl}
+constexpr reverse_iterator operator+(difference_type n) const;
+\end{itemdecl}
+
+\begin{itemdescr}
+\pnum
+\returns
+\tcode{reverse_iterator(current-n)}.
+\end{itemdescr}
+
+\indexlibrarymember{operator-}{reverse_iterator}%
+\begin{itemdecl}
+constexpr reverse_iterator operator-(difference_type n) const;
+\end{itemdecl}
+
+\begin{itemdescr}
+\pnum
+\returns
+\tcode{reverse_iterator(current+n)}.
+\end{itemdescr}
 
 \indexlibrarymember{operator++}{reverse_iterator}%
 \begin{itemdecl}
@@ -1410,8 +1437,6 @@
 \end{codeblock}
 \end{itemdescr}
 
-\rSec4[reverse.iter.op\dcr]{\tcode{operator\dcr}}
-
 \indexlibrarymember{operator\dcr}{reverse_iterator}%
 \begin{itemdecl}
 constexpr reverse_iterator& operator--();
@@ -1443,21 +1468,6 @@
 \end{codeblock}
 \end{itemdescr}
 
-\rSec4[reverse.iter.op+]{\tcode{operator+}}
-
-\indexlibrarymember{operator+}{reverse_iterator}%
-\begin{itemdecl}
-constexpr reverse_iterator operator+(difference_type n) const;
-\end{itemdecl}
-
-\begin{itemdescr}
-\pnum
-\returns
-\tcode{reverse_iterator(current-n)}.
-\end{itemdescr}
-
-\rSec4[reverse.iter.op+=]{\tcode{operator+=}}
-
 \indexlibrarymember{operator+=}{reverse_iterator}%
 \begin{itemdecl}
 constexpr reverse_iterator& operator+=(difference_type n);
@@ -1473,21 +1483,6 @@
 \tcode{*this}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op-]{\tcode{operator-}}
-
-\indexlibrarymember{operator-}{reverse_iterator}%
-\begin{itemdecl}
-constexpr reverse_iterator operator-(difference_type n) const;
-\end{itemdecl}
-
-\begin{itemdescr}
-\pnum
-\returns
-\tcode{reverse_iterator(current+n)}.
-\end{itemdescr}
-
-\rSec4[reverse.iter.op-=]{\tcode{operator-=}}
-
 \indexlibrarymember{operator-=}{reverse_iterator}%
 \begin{itemdecl}
 constexpr reverse_iterator& operator-=(difference_type n);
@@ -1503,20 +1498,7 @@
 \tcode{*this}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.opindex]{\tcode{operator[]}}
-
-\indexlibrarymember{operator[]}{reverse_iterator}%
-\begin{itemdecl}
-constexpr @\unspec@ operator[](difference_type n) const;
-\end{itemdecl}
-
-\begin{itemdescr}
-\pnum
-\returns
-\tcode{current[-n-1]}.
-\end{itemdescr}
-
-\rSec4[reverse.iter.op==]{\tcode{operator==}}
+\rSec3[reverse.iter.cmp]{\tcode{reverse_iterator} comparisons}
 
 \indexlibrarymember{operator==}{reverse_iterator}%
 \begin{itemdecl}
@@ -1532,8 +1514,6 @@
 \tcode{x.current == y.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op<]{\tcode{operator<}}
-
 \indexlibrarymember{operator<}{reverse_iterator}%
 \begin{itemdecl}
 template<class Iterator1, class Iterator2>
@@ -1548,8 +1528,6 @@
 \tcode{x.current > y.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op!=]{\tcode{operator!=}}
-
 \indexlibrarymember{operator"!=}{reverse_iterator}%
 \begin{itemdecl}
 template<class Iterator1, class Iterator2>
@@ -1564,8 +1542,6 @@
 \tcode{x.current != y.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op>]{\tcode{operator>}}
-
 \indexlibrarymember{operator>}{reverse_iterator}%
 \begin{itemdecl}
 template<class Iterator1, class Iterator2>
@@ -1580,8 +1556,6 @@
 \tcode{x.current < y.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op>=]{\tcode{operator>=}}
-
 \indexlibrarymember{operator>=}{reverse_iterator}%
 \begin{itemdecl}
 template<class Iterator1, class Iterator2>
@@ -1596,8 +1570,6 @@
 \tcode{x.current <= y.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.op<=]{\tcode{operator<=}}
-
 \indexlibrarymember{operator<=}{reverse_iterator}%
 \begin{itemdecl}
 template<class Iterator1, class Iterator2>
@@ -1612,7 +1584,7 @@
 \tcode{x.current >= y.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.opdiff]{\tcode{operator-}}
+\rSec3[reverse.iter.nonmember]{Non-member functions}
 
 \indexlibrarymember{operator-}{reverse_iterator}%
 \begin{itemdecl}
@@ -1628,8 +1600,6 @@
 \tcode{y.current - x.current}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.opsum]{\tcode{operator+}}
-
 \indexlibrarymember{operator+}{reverse_iterator}%
 \begin{itemdecl}
 template<class Iterator>
@@ -1644,8 +1614,6 @@
 \tcode{reverse_iterator<Iterator> (x.current - n)}.
 \end{itemdescr}
 
-\rSec4[reverse.iter.make]{Non-member function \tcode{make_reverse_iterator()}}
-
 \indexlibrary{\idxcode{reverse_iterator}!\idxcode{make_reverse_iterator} non-member function}%
 \indexlibrary{\idxcode{make_reverse_iterator}}%
 \begin{itemdecl}
diff --git a/source/xrefdelta.tex b/source/xrefdelta.tex
index 7690eecb32..ea992805ab 100644
--- a/source/xrefdelta.tex
+++ b/source/xrefdelta.tex
@@ -52,5 +52,31 @@
 % Deprecated free-function atomic access to shared pointers
 \movedxref{util.smartptr.shared.atomic}{depr.util.smartptr.shared.atomic}
 
+% Single-item [reverse.iterators] subclauses were dissolved.
+\movedxref{reverse.iter.op==}{reverse.iter.cmp}
+\movedxref{reverse.iter.op<}{reverse.iter.cmp}
+\movedxref{reverse.iter.op!=}{reverse.iter.cmp}
+\movedxref{reverse.iter.op>}{reverse.iter.cmp}
+\movedxref{reverse.iter.op>=}{reverse.iter.cmp}
+\movedxref{reverse.iter.op<=}{reverse.iter.cmp}
+
+\movedxref{reverse.iter.star}{reverse.iter.elem}
+\movedxref{reverse.iter.opref}{reverse.iter.elem}
+\movedxref{reverse.iter.opindex}{reverse.iter.elem}
+
+\movedxref{reverse.iter.op+}{reverse.iter.nav}
+\movedxref{reverse.iter.op-}{reverse.iter.nav}
+\movedxref{reverse.iter.op++}{reverse.iter.nav}
+\movedxref{reverse.iter.op+=}{reverse.iter.nav}
+\movedxref{reverse.iter.op\dcr}{reverse.iter.nav}
+\movedxref{reverse.iter.op-=}{reverse.iter.nav}
+\movedxref{reverse.iter.op++}{reverse.iter.nav}
+
+\movedxref{reverse.iter.opdiff}{reverse.iter.nonmember}
+\movedxref{reverse.iter.opsum}{reverse.iter.nonmember}
+\movedxref{reverse.iter.make}{reverse.iter.nonmember}
+
+\removedxref{reverse.iter.ops}
+
 % Deprecated features.
 %\deprxref{old.label}  (if moved to depr.old.label, otherwise use \movedxref)