Skip to content

Commit bf363db

Browse files
committed
[everywhere] Consistently prevent linebreaks before a parenthesized \ref.
1 parent 5a621f2 commit bf363db

28 files changed

+192
-192
lines changed

source/algorithms.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3380,7 +3380,7 @@
33803380
\tcode{Distance} shall be an integer type.
33813381
\item
33823382
\tcode{remove_reference_t<UniformRandomBitGenerator>}
3383-
shall meet the requirements of a uniform random bit generator type (\ref{rand.req.urng})
3383+
shall meet the requirements of a uniform random bit generator type~(\ref{rand.req.urng})
33843384
whose return type is convertible to \tcode{Distance}.
33853385
\item
33863386
\tcode{out} shall not be in the range \range{first}{last}.

source/basic.tex

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@
121121
\item
122122
\indextext{declaration!static member@\tcode{static} member}%
123123
it declares a non-inline static data member in a class
124-
definition (\ref{class.mem},~\ref{class.static}),
124+
definition~(\ref{class.mem}, \ref{class.static}),
125125
\item
126126
it declares a static data member outside a class definition
127127
and the variable was defined within the class with the \tcode{constexpr}
@@ -314,7 +314,7 @@
314314
\pnum
315315
A variable \tcode{x} whose name appears as a
316316
potentially-evaluated expression \tcode{ex} is \defn{odr-used} by \tcode{ex} unless
317-
applying the lvalue-to-rvalue conversion (\ref{conv.lval}) to \tcode{x} yields
317+
applying the lvalue-to-rvalue conversion~(\ref{conv.lval}) to \tcode{x} yields
318318
a constant expression~(\ref{expr.const}) that does not invoke any non-trivial
319319
functions
320320
and, if \tcode{x} is an object, \tcode{ex} is an element of
@@ -1091,7 +1091,7 @@
10911091
\pnum
10921092
The name lookup rules apply uniformly to all names (including
10931093
\grammarterm{typedef-name}{s}~(\ref{dcl.typedef}),
1094-
\grammarterm{namespace-name}{s} (\ref{basic.namespace}), and
1094+
\grammarterm{namespace-name}{s}~(\ref{basic.namespace}), and
10951095
\grammarterm{class-name}{s}~(\ref{class.name})) wherever the grammar allows
10961096
such names in the context discussed by a particular rule. Name lookup
10971097
associates the use of a name with a set of declarations~(\ref{basic.def}) of
@@ -2508,7 +2508,7 @@
25082508
\indextext{termination!program}%
25092509
Terminating the program
25102510
without leaving the current block (e.g., by calling the function
2511-
\tcode{std::exit(int)} (\ref{support.start.term})) does not destroy any
2511+
\tcode{std::exit(int)}~(\ref{support.start.term})) does not destroy any
25122512
objects with automatic storage duration~(\ref{class.dtor}). If
25132513
\tcode{std::exit} is called to end a program during the destruction of
25142514
an object with static or thread storage duration, the program has undefined
@@ -2673,7 +2673,7 @@
26732673
\footnote{A non-local variable with static storage duration
26742674
having initialization
26752675
with side effects is initialized in this case,
2676-
even if it is not itself odr-used (\ref{basic.def.odr},~\ref{basic.stc.static}).}
2676+
even if it is not itself odr-used~(\ref{basic.def.odr}, \ref{basic.stc.static}).}
26772677
It is \impldef{threads and program points at which deferred dynamic initialization is performed}
26782678
in which threads and at which points in the program such deferred dynamic initialization occurs.
26792679
\begin{note}
@@ -2804,7 +2804,7 @@
28042804
\indexlibrary{\idxcode{atexit}}%
28052805
If the completion of the initialization of an object with static storage
28062806
duration strongly happens before a call to \tcode{std::atexit}~(see
2807-
\tcode{<cstdlib>},~\ref{support.start.term}), the call to the function passed to
2807+
\tcode{<cstdlib>}, \ref{support.start.term}), the call to the function passed to
28082808
\tcode{std::atexit} is sequenced before the call to the destructor for the object. If a
28092809
call to \tcode{std::atexit} strongly happens before the completion of the initialization of
28102810
an object with static storage duration, the call to the destructor for the
@@ -3117,7 +3117,7 @@
31173117
\footnote{The global \tcode{operator delete(void*, std::size_t)}
31183118
precludes use of an
31193119
allocation function \tcode{void operator new(std::size_t, std::size_t)} as a placement
3120-
allocation function (\ref{diff.cpp11.basic}).}; or
3120+
allocation function~(\ref{diff.cpp11.basic}).}; or
31213121
\item
31223122
exactly three parameters,
31233123
the type of the second being \tcode{std::size_t}
@@ -3182,7 +3182,7 @@
31823182
value;
31833183

31843184
\item the result of a well-defined pointer
3185-
conversion~(\ref{conv.ptr},~\ref{expr.cast}) of a safely-derived pointer value;
3185+
conversion~(\ref{conv.ptr}, \ref{expr.cast}) of a safely-derived pointer value;
31863186

31873187
\item the result of a \tcode{reinterpret_cast} of a safely-derived pointer value;
31883188

@@ -3511,9 +3511,9 @@
35113511
impose requirements on implementations regarding the representation
35123512
of types.
35133513
There are two kinds of types: fundamental types and compound types.
3514-
Types describe objects (\ref{intro.object}),
3515-
references (\ref{dcl.ref}),
3516-
or functions (\ref{dcl.fct}).
3514+
Types describe objects~(\ref{intro.object}),
3515+
references~(\ref{dcl.ref}),
3516+
or functions~(\ref{dcl.fct}).
35173517
\end{note}
35183518

35193519
\pnum
@@ -3952,19 +3952,19 @@
39523952
\indextext{type!compound}%
39533953
Compound types can be constructed in the following ways:
39543954
\begin{itemize}
3955-
\item \defnx{arrays}{type!array} of objects of a given type,~\ref{dcl.array};
3955+
\item \defnx{arrays}{type!array} of objects of a given type, \ref{dcl.array};
39563956

39573957
\item \defnx{functions}{type!function}, which have parameters of given types and return
3958-
\tcode{void} or references or objects of a given type,~\ref{dcl.fct};
3958+
\tcode{void} or references or objects of a given type, \ref{dcl.fct};
39593959

39603960
\item \defnx{pointers}{type!pointer} to \cv{}~\tcode{void} or objects or functions (including
3961-
static members of classes) of a given type,~\ref{dcl.ptr};
3961+
static members of classes) of a given type, \ref{dcl.ptr};
39623962

39633963
\item %
39643964
\indextext{reference!lvalue}%
39653965
\indextext{reference!rvalue}%
39663966
\defnx{references}{reference} to objects or functions of a given
3967-
type,~\ref{dcl.ref}. There are two types of references:
3967+
type, \ref{dcl.ref}. There are two types of references:
39683968
\begin{itemize}
39693969
\item \defn{lvalue reference}
39703970
\item \defn{rvalue reference}
@@ -3978,19 +3978,19 @@
39783978

39793979
\item
39803980
\defnx{unions}{\idxcode{union}}, which are classes capable of containing objects of
3981-
different types at different times,~\ref{class.union};
3981+
different types at different times, \ref{class.union};
39823982

39833983
\item
39843984
\defnx{enumerations}{\idxcode{enum}}, which comprise a set of named constant values.
39853985
Each distinct enumeration constitutes a different
3986-
\defnx{enumerated type}{type!enumerated},~\ref{dcl.enum};
3986+
\defnx{enumerated type}{type!enumerated}, \ref{dcl.enum};
39873987

39883988
\item \indextext{member pointer to|see{pointer to member}}%
39893989
\defnx{pointers to non-static class members}{pointer to member},%
39903990
\footnote{Static class members are objects or functions, and pointers to them are
39913991
ordinary pointers to objects or functions.}
39923992
which identify members of a given
3993-
type within objects of a given class,~\ref{dcl.mptr}.
3993+
type within objects of a given class, \ref{dcl.mptr}.
39943994
\end{itemize}
39953995

39963996
\pnum
@@ -4021,9 +4021,9 @@
40214021
\item
40224022
a \defn{pointer to} an object or function (the pointer is said to \defn{point} to the object or function), or
40234023
\item
4024-
a \defn{pointer past the end of} an object (\ref{expr.add}), or
4024+
a \defn{pointer past the end of} an object~(\ref{expr.add}), or
40254025
\item
4026-
the \defn{null pointer value} (\ref{conv.ptr}) for that type, or
4026+
the \defn{null pointer value}~(\ref{conv.ptr}) for that type, or
40274027
\item
40284028
an \defn{invalid pointer value}.
40294029
\end{itemize}
@@ -4343,7 +4343,7 @@
43434343
\rSec1[basic.align]{Alignment}
43444344

43454345
\pnum
4346-
Object types have \defnx{alignment requirements}{alignment requirement!implementation-defined} (\ref{basic.fundamental},~\ref{basic.compound})
4346+
Object types have \defnx{alignment requirements}{alignment requirement!implementation-defined}~(\ref{basic.fundamental}, \ref{basic.compound})
43474347
which place restrictions on the addresses at which an object of that type
43484348
may be allocated. An \defn{alignment} is an \impldef{alignment}
43494349
integer value representing the number of bytes between successive addresses

source/classes.tex

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -526,7 +526,7 @@
526526
A \defn{data member} is a non-function member introduced by a
527527
\grammarterm{member-declarator}.
528528
A \defn{member function} is a member that is a function.
529-
Nested types are classes~(\ref{class.name},~\ref{class.nest}) and
529+
Nested types are classes~(\ref{class.name}, \ref{class.nest}) and
530530
enumerations~(\ref{dcl.enum}) declared in the class and arbitrary types
531531
declared as members by use of a typedef declaration~(\ref{dcl.typedef})
532532
or \grammarterm{alias-declaration}.
@@ -802,7 +802,7 @@
802802
\end{example}
803803
\begin{note}
804804
Reading a volatile object through a non-volatile glvalue has
805-
undefined behavior (\ref{dcl.type.cv}).
805+
undefined behavior~(\ref{dcl.type.cv}).
806806
\end{note}
807807

808808
\pnum
@@ -930,9 +930,9 @@
930930
A non-static member function may be called for an object of
931931
its class type, or for an object of a class derived
932932
(Clause~\ref{class.derived}) from its class type, using the class member
933-
access syntax~(\ref{expr.ref},~\ref{over.match.call}). A non-static
933+
access syntax~(\ref{expr.ref}, \ref{over.match.call}). A non-static
934934
member function may also be called directly using the function call
935-
syntax~(\ref{expr.call},~\ref{over.match.call}) from within
935+
syntax~(\ref{expr.call}, \ref{over.match.call}) from within
936936
the body of a member function of its class or of a class derived from
937937
its class.
938938

@@ -1649,7 +1649,7 @@
16491649
struct X { const int a; int b; };
16501650
union Y { X x; int k; };
16511651
void g() {
1652-
Y y = { { 1, 2 } }; // OK, \tcode{y.x} is active union member (\ref{class.mem})
1652+
Y y = { { 1, 2 } }; // OK, \tcode{y.x} is active union member~(\ref{class.mem})
16531653
int n = y.x.a;
16541654
y.k = 4; // OK: ends lifetime of \tcode{y.x}, \tcode{y.k} is active member of union
16551655
y.x.b = n; // undefined behavior: \tcode{y.x.b} modified outside its lifetime,

source/compatibility.tex

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1412,8 +1412,8 @@
14121412
\ref{expr.cond}
14131413
\change A conditional expression with a throw expression as its second or third
14141414
operand keeps the type and value category of the other operand.
1415-
\rationale Formerly mandated conversions (lvalue-to-rvalue (\ref{conv.lval}),
1416-
array-to-pointer (\ref{conv.array}), and function-to-pointer (\ref{conv.func})
1415+
\rationale Formerly mandated conversions (lvalue-to-rvalue~(\ref{conv.lval}),
1416+
array-to-pointer~(\ref{conv.array}), and function-to-pointer~(\ref{conv.func})
14171417
standard conversions), especially the creation of the temporary due to
14181418
lvalue-to-rvalue conversion, were considered gratuitous and surprising.
14191419
\effect Valid \CppXI code that relies on the conversions may behave differently
@@ -1818,7 +1818,7 @@
18181818
The \tcode{requires} keyword is added
18191819
to introduce constraints through a \grammarterm{requires-clause} or
18201820
a \grammarterm{requires-expression}. The \tcode{concept} keyword is
1821-
added to enable the definition of concepts (\ref{temp.concept}).
1821+
added to enable the definition of concepts~(\ref{temp.concept}).
18221822
\effect
18231823
Valid ISO \CppXVII code using \tcode{concept} or \tcode{requires}
18241824
as an identifier is not valid in this International Standard.
@@ -1848,8 +1848,8 @@
18481848
nor are the C headers themselves part of \Cpp.
18491849

18501850
\pnum
1851-
The \Cpp headers \tcode{<ccomplex>}\indextext{\idxhdr{ccomplex}} (\ref{depr.ccomplex.syn})
1852-
and \tcode{<ctgmath>}\indextext{\idxhdr{ctgmath}} (\ref{depr.ctgmath.syn}), as well
1851+
The \Cpp headers \tcode{<ccomplex>}\indextext{\idxhdr{ccomplex}}~(\ref{depr.ccomplex.syn})
1852+
and \tcode{<ctgmath>}\indextext{\idxhdr{ctgmath}}~(\ref{depr.ctgmath.syn}), as well
18531853
as their corresponding C headers \tcode{<complex.h>}\indextext{\idxhdr{complex.h}}
18541854
and \tcode{<tgmath.h>}\indextext{\idxhdr{tgmath.h}}, do not contain any of the
18551855
content from the C standard library and instead merely include other headers
@@ -1869,7 +1869,7 @@
18691869
The types \tcode{char16_t} and \tcode{char32_t}
18701870
are distinct types rather than typedefs to existing integral types.
18711871
The tokens \tcode{char16_t} and \tcode{char32_t}
1872-
are keywords in this International Standard (\ref{lex.key}).
1872+
are keywords in this International Standard~(\ref{lex.key}).
18731873
They do not appear as macro names defined in
18741874
\tcode{<cuchar>}\indexlibrary{\idxhdr{cuchar}}~(\ref{cuchar.syn}).
18751875

@@ -1879,7 +1879,7 @@
18791879
The type \tcode{wchar_t} is a distinct type rather than a typedef to an
18801880
existing integral type.
18811881
The token \tcode{wchar_t}
1882-
is a keyword in this International Standard (\ref{lex.key}).
1882+
is a keyword in this International Standard~(\ref{lex.key}).
18831883
It does not appear as a type name defined in any of
18841884
\tcode{<cstddef>}~(\ref{cstddef.syn})\indexlibrary{\idxhdr{cstddef}},
18851885
\tcode{<cstdlib>}~(\ref{cstdlib.syn})\indexlibrary{\idxhdr{cstdlib}},
@@ -1890,7 +1890,7 @@
18901890

18911891
\pnum
18921892
The token \tcode{static_assert} is a keyword in this International
1893-
Standard (\ref{lex.key}). It does not appear as a macro name defined
1893+
Standard~(\ref{lex.key}). It does not appear as a macro name defined
18941894
in \tcode{<cassert>}\indexlibrary{\idxhdr{cassert}}~(\ref{cassert.syn}).
18951895

18961896
\rSec3[diff.header.iso646.h]{Header \tcode{<iso646.h>}}
@@ -1911,7 +1911,7 @@
19111911
and
19121912
\tcode{xor_eq}
19131913
are keywords in this International
1914-
Standard (\ref{lex.key}).
1914+
Standard~(\ref{lex.key}).
19151915
They do not appear as macro names defined in
19161916
\tcode{<ciso646>}.
19171917
\indexlibrary{\idxhdr{ciso646}}%
@@ -1921,15 +1921,15 @@
19211921

19221922
\pnum
19231923
The token \tcode{alignas} is a keyword in this International
1924-
Standard (\ref{lex.key}). It does not appear as a macro name defined
1924+
Standard~(\ref{lex.key}). It does not appear as a macro name defined
19251925
in \tcode{<cstdalign>}\indexlibrary{\idxhdr{cstdalign}}~(\ref{depr.cstdalign.syn}).
19261926

19271927
\rSec3[diff.header.stdbool.h]{Header \tcode{<stdbool.h>}}
19281928
\indexlibrary{\idxhdr{stdbool.h}}%
19291929

19301930
\pnum
19311931
The tokens \tcode{bool}, \tcode{true}, and \tcode{false}
1932-
are keywords in this International Standard (\ref{lex.key}).
1932+
are keywords in this International Standard~(\ref{lex.key}).
19331933
They do not appear as macro names defined in
19341934
\tcode{<cstdbool>}\indexlibrary{\idxhdr{cstdbool}}~(\ref{depr.cstdbool.syn}).
19351935

@@ -1942,12 +1942,12 @@
19421942
\tcode{<clocale>}~(\ref{c.locales})\indexlibrary{\idxhdr{clocale}},
19431943
\tcode{<cstddef>}~(\ref{cstddef.syn})\indexlibrary{\idxhdr{cstddef}},
19441944
\tcode{<cstdio>}~(\ref{cstdio.syn})\indexlibrary{\idxhdr{cstdio}},
1945-
\tcode{<cstdlib>} (\ref{cstdlib.syn})\indexlibrary{\idxhdr{cstdlib}},
1945+
\tcode{<cstdlib>}~(\ref{cstdlib.syn})\indexlibrary{\idxhdr{cstdlib}},
19461946
\tcode{<cstring>}~(\ref{cstring.syn})\indexlibrary{\idxhdr{cstring}},
19471947
\tcode{<ctime>}~(\ref{ctime.syn})\indexlibrary{\idxhdr{ctime}},
19481948
or \tcode{<cwchar>}~(\ref{cwchar.syn})\indexlibrary{\idxhdr{cwchar}},
19491949
is an \impldef{definition of \tcode{NULL}} \Cpp null pointer constant in
1950-
this International Standard (\ref{support.types}).
1950+
this International Standard~(\ref{support.types}).
19511951

19521952
\rSec2[diff.mods.to.declarations]{Modifications to declarations}
19531953

source/containers.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3372,7 +3372,7 @@
33723372
A
33733373
\indexlibrary{\idxcode{deque}}%
33743374
\tcode{deque}
3375-
is a sequence container that supports random access iterators (\ref{random.access.iterators}).
3375+
is a sequence container that supports random access iterators~(\ref{random.access.iterators}).
33763376
In addition, it supports constant time insert and erase operations at the beginning or the end;
33773377
insert and erase in the middle take linear time.
33783378
That is, a deque is especially optimized for pushing and popping elements at the beginning and end.

source/conversions.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
includes use as an argument in a function call and use as the expression
5555
in a \tcode{return} statement). The type of the entity being initialized
5656
is (generally) the destination type.
57-
See~\ref{dcl.init},~\ref{dcl.init.ref}.
57+
See~\ref{dcl.init}, \ref{dcl.init.ref}.
5858
\end{itemize}
5959
\end{note}
6060

@@ -327,7 +327,7 @@
327327
\pnum
328328
\begin{note}
329329
Function types (including those used in pointer to member function
330-
types) are never cv-qualified (\ref{dcl.fct}).
330+
types) are never cv-qualified~(\ref{dcl.fct}).
331331
\end{note}
332332
\indextext{conversion!qualification|)}
333333

source/declarations.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@
235235
\begin{note}
236236
A \grammarterm{nodeclspec-function-declaration} can only be used in a
237237
\grammarterm{template-declaration}~(Clause~\ref{temp}),
238-
\grammarterm{explicit-instantiation} (\ref{temp.explicit}), or
238+
\grammarterm{explicit-instantiation}~(\ref{temp.explicit}), or
239239
\grammarterm{explicit-specialization}~(\ref{temp.expl.spec}).
240240
\end{note}
241241

@@ -970,7 +970,7 @@
970970
\pnum
971971
\indextext{specifier!\idxcode{inline}}%
972972
\indextext{inline function}%
973-
A function declaration~(\ref{dcl.fct},~\ref{class.mfct},
973+
A function declaration~(\ref{dcl.fct}, \ref{class.mfct},
974974
\ref{class.friend}) with an \tcode{inline} specifier declares an
975975
\term{inline function}. The inline specifier indicates to
976976
the implementation that inline substitution of the function body at the
@@ -1546,9 +1546,9 @@
15461546
from an initializer. The \tcode{auto}
15471547
\grammarterm{type-specifier} is also used to
15481548
introduce a function type having a \grammarterm{trailing-return-type} or to
1549-
signify that a lambda is a generic lambda (\ref{expr.prim.lambda}).
1549+
signify that a lambda is a generic lambda~(\ref{expr.prim.lambda}).
15501550
The \tcode{auto} \grammarterm{type-specifier} is also used to introduce a
1551-
structured binding declaration (\ref{dcl.struct.bind}).
1551+
structured binding declaration~(\ref{dcl.struct.bind}).
15521552

15531553
\pnum
15541554
The placeholder type can appear with a function declarator in the

0 commit comments

Comments
 (0)