Skip to content

Commit c9fee83

Browse files
jensmaurerAaron Ballman
authored andcommitted
Use 'subclause', not 'section'.
The ISO Directives, Part 2, prescribe the term 'subclause'. Also remove overview sub-headings for non-normative subclause overview text. Fixes #307.
1 parent 3f0fa4a commit c9fee83

22 files changed

+103
-105
lines changed

source/algorithms.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1112,7 +1112,7 @@
11121112
\pnum
11131113
If an algorithm's
11141114
\effects
1115-
section says that a value pointed to by any iterator passed
1115+
element specifies that a value pointed to by any iterator passed
11161116
as an argument is modified, then that algorithm has an additional
11171117
type requirement:
11181118
The type of that argument shall satisfy the requirements
@@ -1226,7 +1226,7 @@
12261226
\rSec1[algorithms.parallel]{Parallel algorithms}
12271227

12281228
\pnum
1229-
This section describes components that \Cpp programs may use to perform
1229+
This subclause describes components that \Cpp programs may use to perform
12301230
operations on containers and other sequences in parallel.
12311231

12321232
\rSec2[algorithms.parallel.defns]{Terms and definitions}
@@ -3937,7 +3937,7 @@
39373937
\rSec2[alg.binary.search]{Binary search}
39383938

39393939
\pnum
3940-
All of the algorithms in this section are versions of binary search
3940+
All of the algorithms in this subclause are versions of binary search
39413941
and assume that the sequence being searched is partitioned with respect to
39423942
an expression formed by binding the search key to an argument of the
39433943
implied or explicit comparison function.
@@ -4496,7 +4496,7 @@
44964496
\rSec2[alg.set.operations]{Set operations on sorted structures}
44974497

44984498
\pnum
4499-
This section defines all the basic set operations on sorted structures.
4499+
This subclause defines all the basic set operations on sorted structures.
45004500
They also work with
45014501
\tcode{multiset}s\iref{multiset}
45024502
containing multiple copies of equivalent elements.

source/atomics.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1413,7 +1413,7 @@
14131413
\rSec1[atomics.fences]{Fences}
14141414

14151415
\pnum
1416-
This section introduces synchronization primitives called \term{fences}. Fences can have
1416+
This subclause introduces synchronization primitives called \term{fences}. Fences can have
14171417
acquire semantics, release semantics, or both. A fence with acquire semantics is called
14181418
an \term{acquire fence}. A fence with release semantics is called a \term{release
14191419
fence}.

source/back.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ \chapter{Bibliography}
2525

2626
\clearpage
2727
\renewcommand{\glossaryname}{Cross references}
28-
\renewcommand{\preglossaryhook}{This annex lists each section label and the
29-
corresponding section number and page number, in alphabetical order by label.\\}
28+
\renewcommand{\preglossaryhook}{This annex lists each clause or subclause label and the
29+
corresponding clause or subclause number and page number, in alphabetical order by label.\\}
3030
\twocolglossary
3131
\renewcommand{\leftmark}{\glossaryname}
3232
{
@@ -37,7 +37,7 @@ \chapter{Bibliography}
3737
\clearpage
3838
\input{xrefdelta}
3939
\renewcommand{\glossaryname}{Cross references from ISO \CppXVII}
40-
\renewcommand{\preglossaryhook}{All section labels from
40+
\renewcommand{\preglossaryhook}{All clause and subclause labels from
4141
ISO \CppXVII (ISO/IEC 14882:2017, \doccite{Programming Languages --- \Cpp})
4242
are present in this document, with the exceptions described below.\\}
4343
\renewcommand{\leftmark}{\glossaryname}
@@ -74,7 +74,7 @@ \chapter{Bibliography}
7474
}
7575

7676
\clearpage
77-
\renewcommand{\preindexhook}{The entries in this section are rough descriptions; exact
77+
\renewcommand{\preindexhook}{The entries in this index are rough descriptions; exact
7878
specifications are at the indicated page in the general text.\\}
7979
\renewcommand{\indexname}{Index of implementation-defined behavior}
8080
\renewcommand{\leftmark}{\indexname}

source/basic.tex

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2947,7 +2947,7 @@
29472947
\end{example}
29482948

29492949
\pnum
2950-
In this section, ``before'' and ``after'' refer to the ``happens before''
2950+
In this subclause, ``before'' and ``after'' refer to the ``happens before''
29512951
relation\iref{intro.multithread}. \begin{note} Therefore, undefined behavior results
29522952
if an object that is being constructed in one thread is referenced from another
29532953
thread without adequate synchronization. \end{note}%
@@ -3286,7 +3286,7 @@
32863286
\item the value returned by a call to the \Cpp standard library implementation of
32873287
\tcode{::operator new(std::\brk{}size_t)} or
32883288
\tcode{::operator new(std::size_t, std::align_val_t)}%
3289-
;\footnote{This section does not impose restrictions
3289+
;\footnote{This subclause does not impose restrictions
32903290
on indirection through pointers to memory not allocated by \tcode{::operator new}. This
32913291
maintains the ability of many \Cpp implementations to use binary libraries and
32923292
components written in other languages. In particular, this applies to C binaries,
@@ -3771,7 +3771,7 @@
37713771
unsigned integer types are collectively called the
37723772
\defnx{extended integer types}{extended integer type}.
37733773
The signed and unsigned integer types shall satisfy
3774-
the constraints given in the C standard, section 5.2.4.2.1.
3774+
the constraints given in the C standard, subclause 5.2.4.2.1.
37753775

37763776
\pnum
37773777
\indextext{arithmetic!\idxcode{unsigned}}%
@@ -4410,7 +4410,7 @@
44104410
and they are not potentially concurrent\iref{intro.multithread},
44114411
the behavior is undefined.
44124412
\begin{note}
4413-
The next section imposes similar, but more complex restrictions on
4413+
The next subclause imposes similar, but more complex restrictions on
44144414
potentially concurrent computations.
44154415
\end{note}
44164416

@@ -4509,7 +4509,7 @@
45094509
initial value of the object, a value assigned to the object by \placeholder{T}, or a
45104510
value assigned to the object by another thread, according to the rules below.
45114511
\begin{note} In some cases, there may instead be undefined behavior. Much of this
4512-
section is motivated by the desire to support atomic operations with explicit
4512+
subclause is motivated by the desire to support atomic operations with explicit
45134513
and detailed visibility constraints. However, it also implicitly supports a
45144514
simpler view for more restricted programs. \end{note}
45154515

source/containers.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7502,7 +7502,7 @@
75027502
An \tcode{unordered_map} satisfies all of the requirements of a container, of an unordered associative container, and of an allocator-aware container (Table~\ref{tab:containers.allocatoraware}). It provides the operations described in the preceding requirements table for unique keys; that is, an \tcode{unordered_map} supports the \tcode{a_uniq} operations in that table, not the \tcode{a_eq} operations. For an \tcode{unordered_map<Key, T>} the \tcode{key type} is \tcode{Key}, the mapped type is \tcode{T}, and the value type is \tcode{pair<const Key, T>}.
75037503

75047504
\pnum
7505-
This section only describes operations on \tcode{unordered_map} that
7505+
This subclause only describes operations on \tcode{unordered_map} that
75067506
are not described in one of the requirement tables, or for which there
75077507
is additional semantic information.
75087508

@@ -8062,7 +8062,7 @@
80628062
mapped type is \tcode{T}, and the value type is \tcode{pair<const Key, T>}.
80638063

80648064
\pnum
8065-
This section only describes operations on \tcode{unordered_multimap}
8065+
This subclause only describes operations on \tcode{unordered_multimap}
80668066
that are not described in one of the requirement tables, or for which
80678067
there is additional semantic information.
80688068

@@ -8406,7 +8406,7 @@
84068406
An \tcode{unordered_set} satisfies all of the requirements of a container, of an unordered associative container, and of an allocator-aware container (Table~\ref{tab:containers.allocatoraware}). It provides the operations described in the preceding requirements table for unique keys; that is, an \tcode{unordered_set} supports the \tcode{a_uniq} operations in that table, not the \tcode{a_eq} operations. For an \tcode{unordered_set<Key>} the \tcode{key type} and the value type are both \tcode{Key}. The \tcode{iterator} and \tcode{const_iterator} types are both constant iterator types. It is unspecified whether they are the same type.
84078407

84088408
\pnum
8409-
This section only describes operations on \tcode{unordered_set} that
8409+
This subclause only describes operations on \tcode{unordered_set} that
84108410
are not described in one of the requirement tables, or for which there
84118411
is additional semantic information.
84128412

@@ -8709,7 +8709,7 @@
87098709
constant iterator types. It is unspecified whether they are the same type.
87108710

87118711
\pnum
8712-
This section only describes operations on \tcode{unordered_multiset} that
8712+
This subclause only describes operations on \tcode{unordered_multiset} that
87138713
are not described in one of the requirement tables, or for which there
87148714
is additional semantic information.
87158715

source/declarations.tex

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -977,7 +977,7 @@
977977
point of call is to be preferred to the usual function call mechanism.
978978
An implementation is not required to perform this inline substitution at
979979
the point of call; however, even if this inline substitution is omitted,
980-
the other rules for inline functions specified in this section shall
980+
the other rules for inline functions specified in this subclause shall
981981
still be respected.
982982

983983
\pnum
@@ -1110,7 +1110,7 @@
11101110
\ref{class},
11111111
and
11121112
\ref{temp.res}, respectively. The remaining
1113-
\grammarterm{type-specifier}{s} are discussed in the rest of this section.
1113+
\grammarterm{type-specifier}{s} are discussed in the rest of this subclause.
11141114
\end{note}
11151115

11161116
\rSec3[dcl.type.cv]{The \grammarterm{cv-qualifier}{s}}%
@@ -1609,7 +1609,7 @@
16091609

16101610
\pnum
16111611
A program that uses \tcode{auto} or \tcode{decltype(auto)} in a context not
1612-
explicitly allowed in this section is ill-formed.
1612+
explicitly allowed in this subclause is ill-formed.
16131613

16141614
\pnum
16151615
If the \grammarterm{init-declarator-list} contains more than one

source/declarators.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3018,7 +3018,7 @@
30183018
to convert the expression, the program is ill-formed.
30193019
\begin{note} If an initializer is itself an initializer list,
30203020
the element is list-initialized, which will result in a recursive application
3021-
of the rules in this section if the element is an aggregate. \end{note}
3021+
of the rules in this subclause if the element is an aggregate. \end{note}
30223022
\end{itemize}
30233023
\begin{example}
30243024
\begin{codeblock}
@@ -3895,7 +3895,7 @@
38953895

38963896
\item Otherwise, if \tcode{T} is a character array and the initializer list has a
38973897
single element that is an appropriately-typed string literal\iref{dcl.init.string},
3898-
initialization is performed as described in that section.
3898+
initialization is performed as described in that subclause.
38993899

39003900
\item Otherwise, if \tcode{T} is an aggregate, aggregate initialization is
39013901
performed\iref{dcl.init.aggr}.

source/diagnostics.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -939,7 +939,7 @@
939939
Classes may be derived from \tcode{error_category} to support
940940
categories of errors in addition to those defined in this document.
941941
Such classes shall behave as specified in this
942-
subclause. \begin{note} \tcode{error_category} objects are
942+
subclause~\ref{syserr.errcat}. \begin{note} \tcode{error_category} objects are
943943
passed by reference, and two such objects
944944
are equal if they have the same address. This means that applications using
945945
custom \tcode{error_category} types should create a single object of each

source/exceptions.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@
180180
\end{example}
181181

182182
\pnum
183-
In this section, ``before'' and ``after'' refer to the
183+
In this Clause, ``before'' and ``after'' refer to the
184184
``sequenced before'' relation\iref{intro.execution}.
185185

186186
\rSec1[except.throw]{Throwing an exception}%
@@ -362,7 +362,7 @@
362362
\indextext{unwinding!stack}%
363363
As control passes from the point where an exception is thrown
364364
to a handler,
365-
destructors are invoked by a process, specified in this section, called
365+
destructors are invoked by a process, specified in this subclause, called
366366
\defn{stack unwinding}.
367367

368368
\pnum

source/expressions.tex

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2324,7 +2324,7 @@
23242324
it is replaced by the return type
23252325
of the function selected by overload resolution
23262326
for class template deduction\iref{over.match.class.deduct}
2327-
for the remainder of this section.
2327+
for the remainder of this subclause.
23282328

23292329
\pnum
23302330
If the initializer is a parenthesized single expression,
@@ -2826,7 +2826,7 @@
28262826
the result refers to the object or the specified base class subobject
28272827
thereof; otherwise, the lvalue-to-rvalue conversion\iref{conv.lval}
28282828
is applied to the bit-field and the resulting prvalue is used as the
2829-
\grammarterm{expression} of the \tcode{static_cast} for the remainder of this section.
2829+
\grammarterm{expression} of the \tcode{static_cast} for the remainder of this subclause.
28302830
If \tcode{T2} is an inaccessible\iref{class.access} or
28312831
ambiguous\iref{class.member.lookup} base class of \tcode{T1},
28322832
a program that necessitates such a cast is ill-formed.
@@ -3168,7 +3168,7 @@
31683168

31693169
\pnum
31703170
\begin{note}
3171-
Subject to the restrictions in this section, an expression may be cast
3171+
Subject to the restrictions in this subclause, an expression may be cast
31723172
to its own type using a \tcode{const_cast} operator.
31733173
\end{note}
31743174

@@ -4158,7 +4158,7 @@
41584158
If the operand has a class type, the operand is converted to a pointer
41594159
type by calling the above-mentioned conversion function, and the
41604160
converted operand is used in place of the original operand for the
4161-
remainder of this section.
4161+
remainder of this subclause.
41624162
In a single-object delete expression, the value of the operand of
41634163
\tcode{delete} may be a null pointer value, a pointer to a non-array object
41644164
created by a previous \grammarterm{new-expression},
@@ -5148,7 +5148,7 @@
51485148
of the same value category and
51495149
of types \cvqual{cv1} \tcode{T} and \cvqual{cv2} \tcode{T}, respectively,
51505150
the operands are considered to be of type \cvqual{cv} \tcode{T}
5151-
for the remainder of this section,
5151+
for the remainder of this subclause,
51525152
where \cvqual{cv} is the union of \cvqual{cv1} and \cvqual{cv2}.
51535153

51545154
\pnum
@@ -5205,7 +5205,7 @@
52055205
Otherwise, if exactly one conversion sequence can be formed,
52065206
that conversion is applied to the chosen operand
52075207
and the converted operand is used in place of the original operand for
5208-
the remainder of this section.
5208+
the remainder of this subclause.
52095209
\begin{note}
52105210
The conversion might be ill-formed even if an implicit conversion
52115211
sequence could be formed.
@@ -5225,7 +5225,7 @@
52255225
If the overload resolution fails, the program is ill-formed. Otherwise,
52265226
the conversions thus determined are applied, and the converted operands
52275227
are used in place of the original operands for the remainder of this
5228-
section.
5228+
subclause.
52295229

52305230
\pnum
52315231
Lvalue-to-rvalue\iref{conv.lval}, array-to-pointer\iref{conv.array},

0 commit comments

Comments
 (0)