Skip to content

Commit 8fbea4e

Browse files
committed
[language.support] Reserve \xref for references to the C standard.
Fixes #1561.
1 parent 1798a9b commit 8fbea4e

File tree

1 file changed

+13
-21
lines changed

1 file changed

+13
-21
lines changed

source/support.tex

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,8 @@
283283
but not
284284
\tcode{(void*)0}.}
285285

286+
\xref ISO C 7.19
287+
286288
\rSec2[support.types.layout]{Sizes, alignments, and offsets}
287289

288290
\pnum
@@ -317,7 +319,7 @@
317319
The type \tcode{size_t} is an
318320
\impldef{type of \tcode{size_t}}
319321
unsigned integer type that is large enough
320-
to contain the size in bytes of any object.
322+
to contain the size in bytes of any object~(\ref{expr.sizeof}).
321323

322324
\pnum
323325
\begin{note}
@@ -331,10 +333,9 @@
331333
\indexlibrary{\idxcode{max_align_t}}%
332334
\tcode{max_align_t} is a POD type whose alignment requirement
333335
is at least as great as that of every scalar type, and whose alignment
334-
requirement is supported in every context.
336+
requirement is supported in every context~(\ref{basic.align}).
335337

336-
\xref Alignment~(\ref{basic.align}), Sizeof~(\ref{expr.sizeof}), Additive
337-
operators~(\ref{expr.add}), Free store~(\ref{class.free}), and ISO C~7.19.
338+
\xref ISO C 7.19
338339

339340
\rSec2[support.types.byteops]{\tcode{byte} type operations}
340341

@@ -1594,7 +1595,7 @@
15941595
The header defines all types and macros the same as
15951596
the C standard library header \tcode{<stdint.h>}.
15961597

1597-
\xref ISO C~7.20.
1598+
\xref ISO C 7.20
15981599

15991600
\rSec1[support.start.term]{Start and termination}
16001601

@@ -1799,8 +1800,7 @@
17991800
when the functions registered with \tcode{at_quick_exit} are.
18001801
\end{itemdescr}
18011802

1802-
\xref~\ref{basic.start}, \ref{basic.start.term},
1803-
ISO C~7.22.4.
1803+
\xref ISO C 7.22.4
18041804

18051805
\rSec1[support.dynamic]{Dynamic memory management}
18061806

@@ -1867,15 +1867,11 @@
18671867
void operator delete[](void* ptr, void*) noexcept;
18681868
\end{codeblock}
18691869

1870-
\xref~\ref{intro.memory}, \ref{basic.stc.dynamic},
1871-
\ref{expr.new}, \ref{expr.delete}, \ref{class.free},
1872-
\ref{memory}.
1873-
18741870
\rSec2[new.delete]{Storage allocation and deallocation}
18751871

18761872
\pnum
18771873
Except where otherwise specified, the provisions of~\ref{basic.stc.dynamic}
1878-
apply to the library versions of \tcode{operator new} and \tcode{op\-er\-a\-tor
1874+
apply to the library versions of \tcode{operator new} and \tcode{operator
18791875
delete}.
18801876
If the value of an alignment argument
18811877
passed to any of these functions
@@ -2018,7 +2014,7 @@
20182014
The
20192015
deallocation functions~(\ref{basic.stc.dynamic.deallocation})
20202016
called by a
2021-
\grammarterm{delete-expression}
2017+
\grammarterm{delete-expression}~(\ref{expr.delete})
20222018
to render the value of \tcode{ptr} invalid.
20232019

20242020
\pnum
@@ -2823,8 +2819,6 @@
28232819
}
28242820
\end{codeblock}
28252821

2826-
\xref~\ref{expr.dynamic.cast}, \ref{expr.typeid}.
2827-
28282822
\rSec2[type.info]{Class \tcode{type_info}}
28292823

28302824
\indexlibrary{\idxcode{type_info}}%
@@ -2848,7 +2842,7 @@
28482842
\pnum
28492843
The class
28502844
\tcode{type_info}
2851-
describes type information generated by the implementation.
2845+
describes type information generated by the implementation~(\ref{expr.typeid}).
28522846
Objects of this class effectively store a pointer to a name for the type, and
28532847
an encoded value suitable for comparing two types for equality or collating order.
28542848
The names, encoding rule, and collating sequence for types are all unspecified
@@ -3103,8 +3097,6 @@
31033097
}
31043098
\end{codeblock}
31053099

3106-
\xref~\ref{except.special}.
3107-
31083100
\rSec2[exception]{Class \tcode{exception}}
31093101

31103102
\indexlibrary{\idxcode{exception}}%
@@ -3803,7 +3795,7 @@
38033795
type that results when passing an argument for which there is no
38043796
parameter, the behavior is undefined.
38053797

3806-
\xref ISO C~7.16.1.1.
3798+
\xref ISO C 7.16.1.1
38073799

38083800
\rSec2[csetjmp.syn]{Header \tcode{<csetjmp>} synopsis}
38093801

@@ -3837,7 +3829,7 @@
38373829
by \tcode{catch} and \tcode{throw} would invoke any non-trivial destructors for any automatic
38383830
objects.
38393831

3840-
\xref ISO C~7.13.
3832+
\xref ISO C 7.13
38413833

38423834
\rSec2[csignal.syn]{Header \tcode{<csignal>} synopsis}
38433835

@@ -3955,4 +3947,4 @@
39553947
with the first argument equal to the signal number
39563948
corresponding to the signal that caused the invocation of the handler.
39573949

3958-
\xref ISO C~7.14.
3950+
\xref ISO C 7.14

0 commit comments

Comments
 (0)