Skip to content

Commit 172f4b3

Browse files
committed
Hyphenate 'pointer-to-member' when it is an adjective.
Fixes #1369.
1 parent 119b98d commit 172f4b3

File tree

8 files changed

+40
-41
lines changed

8 files changed

+40
-41
lines changed

source/basic.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3637,7 +3637,7 @@
36373637

36383638
\pnum
36393639
Arithmetic types~(\ref{basic.fundamental}), enumeration types, pointer
3640-
types, pointer to member types~(\ref{basic.compound}),
3640+
types, pointer-to-member types~(\ref{basic.compound}),
36413641
\tcode{std::nullptr_t},
36423642
and
36433643
cv-qualified~(\ref{basic.type.qualifier}) versions of these
@@ -3927,7 +3927,7 @@
39273927
\pnum
39283928
A value of type \tcode{std::nullptr_t} is a null pointer
39293929
constant~(\ref{conv.ptr}). Such values participate in the pointer and the
3930-
pointer to member conversions~(\ref{conv.ptr}, \ref{conv.mem}).
3930+
pointer-to-member conversions~(\ref{conv.ptr}, \ref{conv.mem}).
39313931
\tcode{sizeof(std::nullptr_t)} shall be equal to \tcode{sizeof(void*)}.
39323932

39333933
\pnum

source/conversions.tex

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
\item Zero or one conversion from the following set: integral
2323
promotions, floating-point promotion, integral conversions, floating-point
2424
conversions, floating-integral conversions, pointer conversions,
25-
pointer to member conversions, and boolean conversions.
25+
pointer-to-member conversions, and boolean conversions.
2626

2727
\item Zero or one function pointer conversion.
2828

@@ -326,7 +326,7 @@
326326

327327
\pnum
328328
\begin{note}
329-
Function types (including those used in pointer to member function
329+
Function types (including those used in pointer-to-member-function
330330
types) are never cv-qualified (\ref{dcl.fct}).
331331
\end{note}
332332
\indextext{conversion!qualification|)}
@@ -527,21 +527,21 @@
527527
object. The null pointer value is converted to the null pointer value of
528528
the destination type.
529529

530-
\rSec1[conv.mem]{Pointer to member conversions}
530+
\rSec1[conv.mem]{Pointer-to-member conversions}
531531

532532
\pnum
533533
\indextext{conversion!pointer to member}%
534534
\indextext{constant!null pointer}%
535535
\indextext{value!null member pointer}%
536-
A null pointer constant~(\ref{conv.ptr}) can be converted to a pointer
537-
to member type; the result is the \term{null member pointer value}
536+
A null pointer constant~(\ref{conv.ptr}) can be converted to a
537+
pointer-to-member type; the result is the \term{null member pointer value}
538538
of that type and is distinguishable from any pointer to member not
539539
created from a null pointer constant.
540540
Such a conversion is called a \term{null member pointer conversion}.
541541
Two null member pointer values of
542542
the same type shall compare equal. The conversion of a null pointer
543543
constant to a pointer to member of cv-qualified type is a single
544-
conversion, and not the sequence of a pointer to member conversion
544+
conversion, and not the sequence of a pointer-to-member conversion
545545
followed by a qualification conversion~(\ref{conv.qual}).
546546

547547
\pnum
@@ -600,7 +600,7 @@
600600

601601
\pnum
602602
\indextext{conversion!boolean}%
603-
A prvalue of arithmetic, unscoped enumeration, pointer, or pointer to member
603+
A prvalue of arithmetic, unscoped enumeration, pointer, or pointer-to-member
604604
type can be converted to a prvalue of type \tcode{bool}. A zero value, null
605605
pointer value, or null member pointer value is converted to \tcode{false}; any
606606
other value is converted to \tcode{true}. For

source/declarators.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -919,7 +919,7 @@
919919
\begin{note}
920920
See also~\ref{expr.unary} and~\ref{expr.mptr.oper}.
921921
The type ``pointer to member'' is distinct from the type ``pointer'',
922-
that is, a pointer to member is declared only by the pointer to member
922+
that is, a pointer to member is declared only by the pointer-to-member
923923
declarator syntax, and never by the pointer declarator syntax.
924924
There is no ``reference-to-member'' type in \Cpp.
925925
\end{note}

source/exceptions.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -496,8 +496,8 @@
496496
\tcode{T} is an unambiguous public base class of \tcode{E}, or
497497
\item%
498498
the \grammarterm{handler} is of type \cv{}~\tcode{T} or \tcode{const T\&}
499-
where \tcode{T} is a pointer or pointer to member type and
500-
\tcode{E} is a pointer or pointer to member type
499+
where \tcode{T} is a pointer or pointer-to-member type and
500+
\tcode{E} is a pointer or pointer-to-member type
501501
that can be converted to \tcode{T} by one or more of
502502
\begin{itemize}
503503

@@ -512,15 +512,15 @@
512512
\end{itemize}
513513

514514
\item
515-
the \grammarterm{handler} is of type \cv{}~\tcode{T} or \tcode{const T\&} where \tcode{T} is a pointer or pointer to member type and \tcode{E} is \tcode{std::nullptr_t}.
515+
the \grammarterm{handler} is of type \cv{}~\tcode{T} or \tcode{const T\&} where \tcode{T} is a pointer or pointer-to-member type and \tcode{E} is \tcode{std::nullptr_t}.
516516

517517
\end{itemize}
518518

519519
\begin{note}
520520
A
521521
\grammarterm{throw-expression}
522522
whose operand is an integer literal with value zero does not match a handler of
523-
pointer or pointer to member type.
523+
pointer or pointer-to-member type.
524524
A handler of reference to array or function type
525525
is never a match for any exception object~(\ref{expr.throw}).
526526
\end{note}

source/expressions.tex

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@
274274
The \defn{composite pointer type} of
275275
two operands \tcode{p1} and
276276
\tcode{p2} having types \tcode{T1} and \tcode{T2}, respectively, where at least one is a
277-
pointer or pointer to member type or
277+
pointer or pointer-to-member type or
278278
\tcode{std::nullptr_t}, is:
279279

280280
\begin{itemize}
@@ -1721,8 +1721,8 @@
17211721
An argument that has type \cv{}~\tcode{std::nullptr_t} is converted
17221722
to type \tcode{void*}~(\ref{conv.ptr}).
17231723
After these conversions, if the
1724-
argument does not have arithmetic, enumeration, pointer, pointer to
1725-
member, or class type, the program is ill-formed. Passing a potentially-evaluated
1724+
argument does not have arithmetic, enumeration, pointer, pointer-to-member,
1725+
or class type, the program is ill-formed. Passing a potentially-evaluated
17261726
argument of class type (Clause~\ref{class}) having a non-trivial
17271727
copy constructor, a non-trivial move constructor,
17281728
or a
@@ -2387,7 +2387,7 @@
23872387
class (Clause~\ref{class.derived}) of \tcode{D},
23882388
if \cvqual{cv2} is the same cv-qualification
23892389
as, or greater cv-qualification than, \cvqual{cv1}.\footnote{Function types
2390-
(including those used in pointer to member function
2390+
(including those used in pointer-to-member-function
23912391
types) are never cv-qualified; see~\ref{dcl.fct}.}
23922392
If no valid standard conversion
23932393
from ``pointer to member of \tcode{B} of type \tcode{T}''
@@ -2558,14 +2558,14 @@
25582558

25592559
\begin{itemize}
25602560
\item converting a prvalue of type ``pointer to member function'' to a
2561-
different pointer to member function type and back to its original type
2562-
yields the original pointer to member value.
2561+
different pointer-to-member-function type and back to its original type
2562+
yields the original pointer-to-member value.
25632563

25642564
\item converting a prvalue of type ``pointer to data member of \tcode{X}
25652565
of type \tcode{T1}'' to the type ``pointer to data member of \tcode{Y}
25662566
of type \tcode{T2}'' (where the alignment requirements of \tcode{T2} are
25672567
no stricter than those of \tcode{T1}) and back to its original type
2568-
yields the original pointer to member value.
2568+
yields the original pointer-to-member value.
25692569
\end{itemize}
25702570

25712571
\pnum
@@ -2771,7 +2771,7 @@
27712771

27722772
\pnum
27732773
\indextext{name!address of cv-qualified}%
2774-
\indextext{expression!pointer to member constant}%
2774+
\indextext{expression!pointer-to-member constant}%
27752775
The result of the unary \tcode{\&} operator is a pointer to its operand.
27762776
The operand shall be an lvalue or a \grammarterm{qualified-id}.
27772777
If the operand is a \grammarterm{qualified-id} naming a non-static or variant member \tcode{m}
@@ -4312,7 +4312,7 @@
43124312
\pnum
43134313
The \tcode{==} (equal to) and the \tcode{!=} (not equal to) operators
43144314
group left-to-right. The operands shall have arithmetic, enumeration, pointer,
4315-
or pointer to member type, or type \tcode{std::nullptr_t}. The operators
4315+
or pointer-to-member type, or type \tcode{std::nullptr_t}. The operators
43164316
\tcode{==} and \tcode{!=} both yield \tcode{true} or \tcode{false}, i.e., a
43174317
result of type \tcode{bool}. In each case below, the operands shall have the
43184318
same type after the specified conversions have been applied.
@@ -4344,7 +4344,7 @@
43444344
\end{itemize}
43454345

43464346
\pnum
4347-
If at least one of the operands is a pointer to member, pointer to member
4347+
If at least one of the operands is a pointer to member, pointer-to-member
43484348
conversions~(\ref{conv.mem}) and qualification
43494349
conversions~(\ref{conv.qual}) are performed on both operands to bring them to
43504350
their composite pointer type (Clause~\ref{expr}).
@@ -4685,8 +4685,8 @@
46854685
composite pointer type (Clause~\ref{expr}). The result is of the composite
46864686
pointer type.
46874687

4688-
\item One or both of the second and third operands have pointer to member type;
4689-
pointer to member conversions~(\ref{conv.mem}) and qualification
4688+
\item One or both of the second and third operands have pointer-to-member type;
4689+
pointer-to-member conversions~(\ref{conv.mem}) and qualification
46904690
conversions~(\ref{conv.qual}) are performed to bring them to their composite
46914691
pointer type (Clause~\ref{expr}). The result is of the composite pointer type.
46924692

source/lex.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1710,8 +1710,8 @@
17101710
The pointer literal is the keyword \tcode{nullptr}. It is a prvalue of type
17111711
\tcode{std::nullptr_t}.
17121712
\begin{note}
1713-
\tcode{std::nullptr_t} is a distinct type that is neither a pointer type nor a pointer
1714-
to member type; rather, a prvalue of this type is a null pointer constant and can be
1713+
\tcode{std::nullptr_t} is a distinct type that is neither a pointer type nor a pointer-to-member type;
1714+
rather, a prvalue of this type is a null pointer constant and can be
17151715
converted to a null pointer value or null member pointer value. See~\ref{conv.ptr}
17161716
and~\ref{conv.mem}.
17171717
\end{note}

source/overloading.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2040,7 +2040,7 @@
20402040
Floating-point conversions & & & \ref{conv.double} \\ \cline{1-1}\cline{4-4}
20412041
Floating-integral conversions & & & \ref{conv.fpint} \\ \cline{1-1}\cline{4-4}
20422042
Pointer conversions & \rb{Conversion} & \rb{Conversion} & \ref{conv.ptr} \\ \cline{1-1}\cline{4-4}
2043-
Pointer to member conversions & & & \ref{conv.mem} \\ \cline{1-1}\cline{4-4}
2043+
Pointer-to-member conversions & & & \ref{conv.mem} \\ \cline{1-1}\cline{4-4}
20442044
Boolean conversions & & & \ref{conv.bool} \\
20452045
\end{floattable}
20462046

@@ -2796,7 +2796,7 @@
27962796
match targets of function pointer type or
27972797
reference to function type.
27982798
Non-static member functions match targets of
2799-
pointer to member function type.
2799+
pointer-to-member-function type.
28002800
If a non-static member function is selected, the reference to the overloaded
28012801
function name is required to have the form of a pointer to member as
28022802
described in~\ref{expr.unary.op}.
@@ -3648,7 +3648,7 @@
36483648
\end{codeblock}
36493649

36503650
\pnum
3651-
For every pointer to member type \tcode{\placeholder{T}} or type \tcode{std::nullptr_t} there
3651+
For every pointer-to-member type \tcode{\placeholder{T}} or type \tcode{std::nullptr_t} there
36523652
exist candidate operator functions of the form
36533653

36543654
\begin{codeblock}
@@ -3715,7 +3715,7 @@
37153715
\cvqual{vq}),
37163716
where
37173717
\tcode{\placeholder{T}}
3718-
is an enumeration or pointer to member type,
3718+
is an enumeration or pointer-to-member type,
37193719
there exist candidate operator functions of the form
37203720

37213721
\begin{codeblock}

source/templates.tex

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6288,7 +6288,7 @@
62886288
the transformed \tcode{A}.
62896289
\item
62906290
The transformed \tcode{A}
6291-
can be another pointer or pointer to member type that can be converted
6291+
can be another pointer or pointer-to-member type that can be converted
62926292
to the deduced
62936293
\tcode{A}
62946294
via a function pointer conversion~(\ref{conv.fctptr}) and/or
@@ -6336,8 +6336,7 @@
63366336
\pnum
63376337
When
63386338
\tcode{P}
6339-
is a function type, function pointer type, or pointer to member
6340-
function type:
6339+
is a function type, function pointer type, or pointer-to-member-function type:
63416340
\begin{itemize}
63426341
\item
63436342
If the argument is an overload set containing one or more function templates,
@@ -6511,12 +6510,12 @@
65116510
\tcode{A} can be ``pointer to function''
65126511
even if the deduced \tcode{A} is ``pointer to noexcept function''.
65136512
\item
6514-
If the original \tcode{A} is a pointer to member function type,
6513+
If the original \tcode{A} is a pointer-to-member-function type,
65156514
\tcode{A} can be ``pointer to member of type function''
65166515
even if the deduced \tcode{A} is ``pointer to member of type noexcept function''.
65176516
\item
65186517
The deduced \tcode{A}
6519-
can be another pointer or pointer to member type that
6518+
can be another pointer or pointer-to-member type that
65206519
can be converted to \tcode{A} via a qualification conversion.
65216520
\end{itemize}
65226521

@@ -6529,7 +6528,7 @@
65296528

65306529
\pnum
65316530
When the deduction process requires a qualification conversion for a
6532-
pointer or pointer to member type as described above, the following
6531+
pointer or pointer-to-member type as described above, the following
65336532
process is used to determine the deduced template argument values:
65346533

65356534
If
@@ -6830,7 +6829,7 @@
68306829
A function type includes the types of each of the function parameters
68316830
and the return type.
68326831
\item
6833-
A pointer to member type includes the type of the class object pointed to
6832+
A pointer-to-member type includes the type of the class object pointed to
68346833
and the type of the member pointed to.
68356834
\item
68366835
A type that is a specialization of a class template (e.g.,
@@ -7348,8 +7347,8 @@
73487347
\pnum
73497348
A
73507349
\grammarterm{template-argument}
7351-
can be deduced from a function, pointer to function, or pointer to
7352-
member function type.
7350+
can be deduced from a function, pointer to function, or
7351+
pointer-to-member-function type.
73537352

73547353
\begin{example}
73557354

0 commit comments

Comments
 (0)