Skip to content

Commit d119277

Browse files
CaseyCarterzygoloid
authored andcommitted
[concepts] Rephrase ocurrences of "must"
1 parent 714621e commit d119277

File tree

2 files changed

+11
-10
lines changed

2 files changed

+11
-10
lines changed

source/concepts.tex

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
is the expression's result and all operands modified by the expression.
3131

3232
\pnum
33-
Not all input values must be valid for a given expression; e.g., for integers
33+
Not all input values need be valid for a given expression; e.g., for integers
3434
\tcode{a} and \tcode{b}, the expression \tcode{a / b} is not well-defined when
3535
\tcode{b} is \tcode{0}. This does not preclude the expression \tcode{a / b}
3636
being equality-preserving. The \term{domain} of an expression is the set of
@@ -39,8 +39,8 @@
3939
\pnum
4040
Expressions required by this document to be equality-preserving are further
4141
required to be stable: two evaluations of such an expression with the same input
42-
objects must have equal outputs absent any explicit intervening modification of
43-
those input objects.
42+
objects are required to have equal outputs absent any explicit intervening
43+
modification of those input objects.
4444
\begin{note}
4545
This requirement allows generic code to reason about the current values of
4646
objects based on knowledge of the prior values as observed via
@@ -64,18 +64,18 @@
6464
This document uses a notational convention to specify which expressions declared
6565
in a \grammarterm{requires-expression} modify which inputs: except where
6666
otherwise specified, an expression operand that is a non-constant lvalue or
67-
rvalue may be modified. Operands that are constant lvalues or rvalues must not
68-
be modified.
67+
rvalue may be modified. Operands that are constant lvalues or rvalues are
68+
required to not be modified.
6969

7070
\pnum
7171
Where a \grammarterm{requires-expression} declares an expression that is
7272
non-modifying for some constant lvalue operand, additional variations of that
7373
expression that accept a non-constant lvalue or (possibly constant) rvalue for
7474
the given operand are also required except where such an expression variation is
7575
explicitly required with differing semantics. These
76-
\term{implicit expression variations} must meet the semantic requirements of the
77-
declared expression. The extent to which an implementation validates the syntax
78-
of the variations is unspecified.
76+
\term{implicit expression variations} are required to meet the semantic
77+
requirements of the declared expression. The extent to which an implementation
78+
validates the syntax of the variations is unspecified.
7979

8080
\begin{example}
8181
\begin{codeblock}
@@ -333,7 +333,8 @@
333333
\pnum
334334
The \libconcept{ConvertibleTo} concept requires an expression of a particular
335335
type and value category to be both implicitly and explicitly convertible to some
336-
other type. The implicit and explicit conversions must produce equal results.
336+
other type. The implicit and explicit conversions are required to produce equal
337+
results.
337338

338339
\indexlibrary{\idxcode{ConvertibleTo}}%
339340
\begin{itemdecl}

source/lib-intro.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -967,7 +967,7 @@
967967
the same name in namespace \tcode{std}, customization point objects specify that
968968
lookup for these expressions is performed in a context that includes deleted
969969
overloads matching the signatures of overloads defined in namespace \tcode{std}.
970-
When the deleted overloads are viable, user-defined overloads must be more
970+
When the deleted overloads are viable, user-defined overloads need be more
971971
specialized\iref{temp.func.order} or more constrained\iref{temp.constr.order} to
972972
be used by a customization point object.
973973
\end{note}

0 commit comments

Comments
 (0)