Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions source/algorithms.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4403,7 +4403,7 @@

\pnum
\complexity
No applications of the corresponding predicate and projections if:
No applications of the corresponding predicate and projections if
\begin{itemize}
\item
for the first overload,
Expand Down Expand Up @@ -6608,7 +6608,7 @@
from position \tcode{first + i} into position \tcode{first + n + i}
for each non-negative integer \tcode{i < (last - first) - n}.
Does so in order starting
from \tcode{i = (last - first) - n - 1} and proceeding to \tcode{i = 0} if:
from \tcode{i = (last - first) - n - 1} and proceeding to \tcode{i = 0} if
\begin{itemize}
\item
for the overload in namespace \tcode{std}
Expand Down
26 changes: 13 additions & 13 deletions source/basic.tex
Original file line number Diff line number Diff line change
Expand Up @@ -497,7 +497,7 @@

\pnum
A local entity\iref{basic.pre}
is \defn{odr-usable} in a scope\iref{basic.scope.scope} if:
is \defn{odr-usable} in a scope\iref{basic.scope.scope} if
\begin{itemize}
\item either the local entity is not \tcode{*\keyword{this}}, or
an enclosing class or non-lambda function parameter scope exists and,
Expand Down Expand Up @@ -607,7 +607,7 @@
\begin{note}
The rules for declarations and expressions
describe in which contexts complete class types are required. A class
type \tcode{T} must be complete if:
type \tcode{T} must be complete if
\begin{itemize}
\item an object of type \tcode{T} is defined\iref{basic.def}, or
\item a non-static class data member of type \tcode{T} is
Expand Down Expand Up @@ -909,7 +909,7 @@

\pnum
Two non-static member functions have
\defnadjx{corresponding}{object parameters}{object parameter} if:
\defnadjx{corresponding}{object parameters}{object parameter} if
\begin{itemize}
\item
exactly one is an implicit object member function
Expand All @@ -922,7 +922,7 @@
\end{itemize}
\indextext{template!function!corresponding object parameter}%
Two non-static member function templates have
\defnadjx{corresponding}{object parameters}{object parameter} if:
\defnadjx{corresponding}{object parameters}{object parameter} if
\begin{itemize}
\item
exactly one is an implicit object member function
Expand Down Expand Up @@ -963,7 +963,7 @@
and they do not declare corresponding overloads.
\end{itemize}
Two function or function template declarations declare
\defn{corresponding overloads} if:
\defn{corresponding overloads} if
\begin{itemize}
\item
both declare functions with the same non-object-parameter-type-list,
Expand Down Expand Up @@ -3206,7 +3206,7 @@
in storage associated with a member subobject or array element \placeholder{e}
(which may or may not be within its lifetime),
the created object
is a subobject of \placeholder{e}'s containing object if:
is a subobject of \placeholder{e}'s containing object if
\begin{itemize}
\item
the lifetime of \placeholder{e}'s containing object has begun and not ended, and
Expand All @@ -3223,7 +3223,7 @@
of type ``array of $N$ \tcode{\keyword{unsigned} \keyword{char}}'' or
of type ``array of $N$ \tcode{std::byte}''\iref{cstddef.syn},
that array \defn{provides storage}
for the created object if:
for the created object if
\begin{itemize}
\item
the lifetime of \placeholder{e} has begun and not ended, and
Expand Down Expand Up @@ -3266,7 +3266,7 @@

\pnum
\indextext{object!nested within}%
An object \placeholder{a} is \defn{nested within} another object \placeholder{b} if:
An object \placeholder{a} is \defn{nested within} another object \placeholder{b} if
\begin{itemize}
\item
\placeholder{a} is a subobject of \placeholder{b}, or
Expand Down Expand Up @@ -3551,7 +3551,7 @@
if the pointer were of type \tcode{\keyword{void}*} is
well-defined. Indirection through such a pointer is permitted but the resulting lvalue may only be used in
limited ways, as described below. The
program has undefined behavior if:
program has undefined behavior if
\begin{itemize}
\item
the pointer is used as the operand of a \grammarterm{delete-expression},
Expand Down Expand Up @@ -3614,7 +3614,7 @@
a glvalue refers to
allocated storage\iref{basic.stc.dynamic.allocation}, and using the
properties of the glvalue that do not depend on its value is
well-defined. The program has undefined behavior if:
well-defined. The program has undefined behavior if
\begin{itemize}
\item the glvalue is used to access the object, or
\item the glvalue is used to call a non-static member function of the object, or
Expand All @@ -3625,7 +3625,7 @@
\end{itemize}

\pnum
An object $o_1$ is \defn{transparently replaceable} by an object $o_2$ if:
An object $o_1$ is \defn{transparently replaceable} by an object $o_2$ if
\begin{itemize}
\item the storage that $o_2$ occupies exactly overlays
the storage that $o_1$ occupied, and
Expand Down Expand Up @@ -5527,7 +5527,7 @@
\end{note}

\pnum
Two objects \placeholder{a} and \placeholder{b} are \defn{pointer-interconvertible} if:
Two objects \placeholder{a} and \placeholder{b} are \defn{pointer-interconvertible} if
\begin{itemize}
\item
they are the same object, or
Expand Down Expand Up @@ -6304,7 +6304,7 @@

\pnum
An evaluation $A$ \defn{happens before} an evaluation $B$
(or, equivalently, $B$ \defn{happens after} $A$) if:
(or, equivalently, $B$ \defn{happens after} $A$) if
\begin{itemize}
\item $A$ is sequenced before $B$, or
\item $A$ inter-thread happens before $B$.
Expand Down
14 changes: 7 additions & 7 deletions source/classes.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1058,7 +1058,7 @@
\end{example}

\pnum
Two special member functions are of the same kind if:
Two special member functions are of the same kind if
\begin{itemize}
\item they are both default constructors,
\item they are both copy or move constructors
Expand Down Expand Up @@ -1224,7 +1224,7 @@
inline public member of its class.

\pnum
A defaulted default constructor for class \tcode{X} is defined as deleted if:
A defaulted default constructor for class \tcode{X} is defined as deleted if
\begin{itemize}
\item any non-static data member with no default member initializer\iref{class.mem} is
of reference type,
Expand Down Expand Up @@ -1260,7 +1260,7 @@
\pnum
A default constructor is
\defnx{trivial}{constructor!default!trivial}
if it is not user-provided and if:
if it is not user-provided and if
\begin{itemize}
\item
its class has no virtual functions\iref{class.virtual} and no virtual base
Expand Down Expand Up @@ -1547,7 +1547,7 @@
\tcode{X}
is
trivial
if it is not user-provided and if:
if it is not user-provided and if
\begin{itemize}
\item
class
Expand Down Expand Up @@ -1831,7 +1831,7 @@
\tcode{X}
is
trivial
if it is not user-provided and if:
if it is not user-provided and if
\begin{itemize}
\item
class
Expand Down Expand Up @@ -2029,7 +2029,7 @@

\pnum
A defaulted destructor for a class
\tcode{X} is defined as deleted if:
\tcode{X} is defined as deleted if
\begin{itemize}
\item any potentially constructed subobject has class type
\tcode{M} (or possibly multi-dimensional array thereof) and
Expand All @@ -2043,7 +2043,7 @@
\end{itemize}

\pnum
A destructor is trivial if it is not user-provided and if:
A destructor is trivial if it is not user-provided and if
\begin{itemize}
\item the destructor is not virtual,

Expand Down
8 changes: 4 additions & 4 deletions source/concepts.tex
Original file line number Diff line number Diff line change
Expand Up @@ -420,7 +420,7 @@
let \tcode{u1} and \tcode{u2} be equality-preserving expressions such that
\tcode{decltype((u1))} and \tcode{decltype((u2))} are each \tcode{U}.
\tcode{T} and \tcode{U} model \tcode{\libconcept{common_reference_with}<T, U>}
only if:
only if
\begin{itemize}
\item \tcode{C(t1)} equals \tcode{C(t2)} if and only if
\tcode{t1} equals \tcode{t2}, and
Expand Down Expand Up @@ -473,7 +473,7 @@
let \tcode{u1} and \tcode{u2} be equality-preserving expressions such that
\tcode{decltype((u1))} and \tcode{decltype((u2))} are each \tcode{U}.
\tcode{T} and \tcode{U} model \tcode{\libconcept{common_with}<T, U>}
only if:
only if
\begin{itemize}
\item \tcode{C(t1)} equals \tcode{C(t2)} if and only if
\tcode{t1} equals \tcode{t2}, and
Expand Down Expand Up @@ -881,7 +881,7 @@
\pnum
Let \tcode{e} be an expression such that
\tcode{decltype((e))} is \tcode{T}.
\tcode{T} models \exposconcept{boolean-testable-impl} only if:
\tcode{T} models \exposconcept{boolean-testable-impl} only if

\begin{itemize}
\item
Expand Down Expand Up @@ -1024,7 +1024,7 @@
let \tcode{u1} and \tcode{u2} be equality-preserving expressions
that are lvalues of type \tcode{remove_cvref_t<U>}.
\tcode{T} and \tcode{U} model
\tcode{\exposconcept{comparison-common-type-with}<T, U>} only if:
\tcode{\exposconcept{comparison-common-type-with}<T, U>} only if
\begin{itemize}
\item
\tcode{\exposid{CONVERT_TO_LVALUE}<C>(t1)} equals
Expand Down
2 changes: 1 addition & 1 deletion source/declarations.tex
Original file line number Diff line number Diff line change
Expand Up @@ -888,7 +888,7 @@
\pnum
\indextext{specifier!\idxcode{constexpr}!function}%
\indextext{constexpr function}%
A function is \defn{constexpr-suitable} if:
A function is \defn{constexpr-suitable} if
\begin{itemize}
\item
it is not a coroutine\iref{dcl.fct.def.coroutine}, and
Expand Down
4 changes: 2 additions & 2 deletions source/expressions.tex
Original file line number Diff line number Diff line change
Expand Up @@ -5301,7 +5301,7 @@
If the \grammarterm{expression} in a \grammarterm{noptr-new-declarator}
is present, it is implicitly converted to \tcode{std::size_t}.
\indextext{function!allocation}%
The value of the \grammarterm{expression} is invalid if:
The value of the \grammarterm{expression} is invalid if
\begin{itemize}
\item
the expression is of non-class type and its value before converting to
Expand Down Expand Up @@ -7842,7 +7842,7 @@
\end{example}

\pnum
An object \tcode{a} is said to have \defnadj{constant}{destruction} if:
An object \tcode{a} is said to have \defnadj{constant}{destruction} if
\begin{itemize}
\item
it is not of class type nor (possibly multidimensional) array thereof, or
Expand Down
8 changes: 4 additions & 4 deletions source/iostreams.tex
Original file line number Diff line number Diff line change
Expand Up @@ -17271,7 +17271,7 @@
\impldef{effect of \tcode{filesystem::copy}}.

\item
Otherwise, an error is reported as specified in~\ref{fs.err.report} if:
Otherwise, an error is reported as specified in~\ref{fs.err.report} if
\begin{itemize}
\item \tcode{exists(f)} is \tcode{false}, or
\item \tcode{equivalent(from, to)} is \tcode{true}, or
Expand Down Expand Up @@ -17429,7 +17429,7 @@
As follows:
\begin{itemize}
\item
Report an error as specified in~\ref{fs.err.report} if:
Report an error as specified in~\ref{fs.err.report} if
\begin{itemize}
\item \tcode{is_regular_file(from)} is \tcode{false}, or
\item \tcode{exists(to)} is \tcode{true} and \tcode{is_regular_file(to)} is \tcode{false}, or
Expand All @@ -17444,7 +17444,7 @@

\item
Otherwise, copy the contents and attributes of the file \tcode{from}
resolves to, to the file \tcode{to} resolves to, if:
resolves to, to the file \tcode{to} resolves to, if
\begin{itemize}
\item \tcode{exists(to)} is \tcode{false}, or
\item \tcode{(options \& copy_options::overwrite_existing) != copy_options::none}, or
Expand Down Expand Up @@ -18568,7 +18568,7 @@
\begin{itemdescr}
\pnum
\effects
As if:
As if by:
\begin{codeblock}
error_code ec;
file_status result = status(p, ec);
Expand Down
18 changes: 9 additions & 9 deletions source/iterators.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1338,7 +1338,7 @@
\pnum
Let \tcode{E} be an expression such that \tcode{decltype((E))} is \tcode{T},
and let \tcode{o} be a dereferenceable object of type \tcode{Out}.
\tcode{Out} and \tcode{T} model \tcode{\libconcept{indirectly_writable}<Out, T>} only if
\tcode{Out} and \tcode{T} model \tcode{\libconcept{indirectly_writable}<Out, T>} only if:
\begin{itemize}
\item If \tcode{Out} and \tcode{T} model
\tcode{\libconcept{indirectly_readable}<Out> \&\& \libconcept{same_as}<iter_value_t<Out>, decay_t<T>>},
Expand Down Expand Up @@ -1544,7 +1544,7 @@
\pnum
Let \tcode{i} be an object of type \tcode{I}. When \tcode{i} is in the domain of
both pre- and post-increment, \tcode{i} is said to be \defn{incrementable}.
\tcode{I} models \tcode{\libconcept{weakly_incrementable}<I>} only if
\tcode{I} models \tcode{\libconcept{weakly_incrementable}<I>} only if:
\begin{itemize}
\item The expressions \tcode{++i} and \tcode{i++} have the same domain.
\item If \tcode{i} is incrementable, then both \tcode{++i}
Expand Down Expand Up @@ -1591,7 +1591,7 @@

\pnum
Let \tcode{a} and \tcode{b} be incrementable objects of type \tcode{I}.
\tcode{I} models \libconcept{incrementable} only if
\tcode{I} models \libconcept{incrementable} only if:
\begin{itemize}
\item If \tcode{bool(a == b)} then \tcode{bool(a++ == b)}.
\item If \tcode{bool(a == b)} then \tcode{bool(((void)a++, a) == ++b)}.
Expand Down Expand Up @@ -1654,7 +1654,7 @@
\pnum
Let \tcode{s} and \tcode{i} be values of type \tcode{S} and
\tcode{I} such that \range{i}{s} denotes a range. Types
\tcode{S} and \tcode{I} model \tcode{\libconcept{sentinel_for}<S, I>} only if
\tcode{S} and \tcode{I} model \tcode{\libconcept{sentinel_for}<S, I>} only if:
\begin{itemize}
\item \tcode{i == s} is well-defined.

Expand Down Expand Up @@ -1699,7 +1699,7 @@
a sentinel of type \tcode{S} such that \range{i}{s} denotes a range.
Let $N$ be the smallest number of applications of \tcode{++i}
necessary to make \tcode{bool(i == s)} be \tcode{true}.
\tcode{S} and \tcode{I} model \tcode{\libconcept{sized_sentinel_for}<S, I>} only if
\tcode{S} and \tcode{I} model \tcode{\libconcept{sized_sentinel_for}<S, I>} only if:
\begin{itemize}
\item If $N$ is representable by \tcode{iter_difference_t<I>},
then \tcode{s - i} is well-defined and equals $N$.
Expand Down Expand Up @@ -1829,7 +1829,7 @@

\pnum
Two dereferenceable iterators \tcode{a} and \tcode{b} of type \tcode{X}
offer the \defn{multi-pass guarantee} if:
offer the \defn{multi-pass guarantee} if
\begin{itemize}
\item \tcode{a == b} implies \tcode{++a == ++b} and
\item the expression
Expand Down Expand Up @@ -1918,7 +1918,7 @@
after \tcode{n} applications of \tcode{++a},
let \tcode{D} be \tcode{iter_difference_t<I>},
and let \tcode{n} denote a value of type \tcode{D}.
\tcode{I} models \libconcept{random_access_iterator} only if
\tcode{I} models \libconcept{random_access_iterator} only if:
\begin{itemize}
\item \tcode{(a += n)} is equal to \tcode{b}.
\item \tcode{addressof(a += n)} is equal to \tcode{addressof(a)}.
Expand Down Expand Up @@ -2021,7 +2021,7 @@
bidirectional.iterators,random.access.iterators}.

\pnum
A type \tcode{X} meets the \defnoldconcept{Iterator} requirements if:
A type \tcode{X} meets the \defnoldconcept{Iterator} requirements if
\begin{itemize}
\item \tcode{X} meets the \oldconcept{CopyConstructible}, \oldconcept{CopyAssignable}, \oldconcept{Swappable}, and
\oldconcept{Destructible} requirements\iref{utility.arg.requirements,swappable.requirements}, and
Expand Down Expand Up @@ -2246,7 +2246,7 @@

\pnum
Two dereferenceable iterators \tcode{a} and \tcode{b} of type \tcode{X} offer the
\defn{multi-pass guarantee} if:
\defn{multi-pass guarantee} if
\begin{itemize}
\item \tcode{a == b} implies \tcode{++a == ++b} and
\item \tcode{X} is a pointer type or the expression
Expand Down
Loading