Skip to content

Commit 0deafa4

Browse files
jensmaurertkoeppe
authored andcommitted
[lib] Excise Note A, Note B, etc. designations
Fixes ISO/CS comment (C++23 proof)
1 parent 5731ab6 commit 0deafa4

File tree

2 files changed

+13
-14
lines changed

2 files changed

+13
-14
lines changed

source/meta.tex

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1934,8 +1934,8 @@
19341934

19351935
\tcode{template<class... T>} \tcode{struct common_type;}
19361936
&
1937-
Unless this trait is specialized (as specified in Note B, below),
1938-
the member \tcode{type} is defined or omitted as specified in Note A, below.
1937+
Unless this trait is specialized,
1938+
the member \tcode{type} is defined or omitted as specified below.
19391939
If it is omitted, there shall be no member \tcode{type}.
19401940
Each type in the template parameter pack \tcode{T} shall be
19411941
complete, \cv{}~\keyword{void}, or an array of unknown bound. \\ \rowsep
@@ -1947,14 +1947,14 @@
19471947
\keyword{struct}
19481948
\hspace*{2ex}\tcode{basic_common_reference;}
19491949
&
1950-
Unless this trait is specialized (as specified in Note D, below),
1950+
Unless this trait is specialized,
19511951
there shall be no member \tcode{type}. \\ \rowsep
19521952

19531953
\indexlibraryglobal{common_reference}%
19541954
\tcode{template<class... T>} \tcode{struct common_reference;}
19551955
&
19561956
The member \grammarterm{typedef-name} \tcode{type} is defined or omitted
1957-
as specified in Note C, below. Each type in the parameter pack \tcode{T} shall
1957+
as specified below. Each type in the parameter pack \tcode{T} shall
19581958
be complete or \cv{} \keyword{void}. \\ \rowsep
19591959

19601960
\indexlibraryglobal{underlying_type}%
@@ -2066,7 +2066,6 @@
20662066
\tcode{\placeholdernc{COMMON-REF}(A, B)} is ill-formed.
20672067

20682068
\pnum
2069-
Note A:
20702069
For the \tcode{common_type} trait applied to a template parameter pack \tcode{T} of types,
20712070
the member \tcode{type} shall be either defined or not present as follows:
20722071

@@ -2120,7 +2119,7 @@
21202119
\end{itemize}
21212120

21222121
\pnum
2123-
Note B: Notwithstanding the provisions of \ref{meta.type.synop}, and
2122+
Notwithstanding the provisions of \ref{meta.type.synop}, and
21242123
pursuant to \ref{namespace.std},
21252124
a program may specialize \tcode{common_type<T1, T2>}
21262125
for types \tcode{T1} and \tcode{T2} such that
@@ -2140,7 +2139,7 @@
21402139
No diagnostic is required for a violation of this Note's rules.
21412140

21422141
\pnum
2143-
Note C: For the \tcode{common_reference} trait applied to a parameter pack
2142+
For the \tcode{common_reference} trait applied to a parameter pack
21442143
\tcode{T} of types, the member \tcode{type} shall be either defined or not
21452144
present as follows:
21462145
\begin{itemize}
@@ -2186,7 +2185,7 @@
21862185
\end{itemize}
21872186

21882187
\pnum
2189-
Note D: Notwithstanding the provisions of \ref{meta.type.synop}, and
2188+
Notwithstanding the provisions of \ref{meta.type.synop}, and
21902189
pursuant to \ref{namespace.std}, a program may partially specialize
21912190
\tcode{basic_common_reference<T, U, TQual, UQual>}
21922191
for types \tcode{T} and \tcode{U} such that

source/utilities.tex

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2840,10 +2840,10 @@
28402840
get(tuple<Types...>& t) noexcept;
28412841
template<size_t I, class... Types>
28422842
constexpr tuple_element_t<I, tuple<Types...>>&&
2843-
get(tuple<Types...>&& t) noexcept; // Note A
2843+
get(tuple<Types...>&& t) noexcept; // \#1
28442844
template<size_t I, class... Types>
28452845
constexpr const tuple_element_t<I, tuple<Types...>>&
2846-
get(const tuple<Types...>& t) noexcept; // Note B
2846+
get(const tuple<Types...>& t) noexcept; // \#2
28472847
template<size_t I, class... Types>
28482848
constexpr const tuple_element_t<I, tuple<Types...>>&& get(const tuple<Types...>&& t) noexcept;
28492849
\end{itemdecl}
@@ -2860,18 +2860,18 @@
28602860

28612861
\pnum
28622862
\begin{note}
2863-
[Note A]
2864-
If a type \tcode{T} in \tcode{Types} is some reference type \tcode{X\&},
2863+
For the overload marked \#1,
2864+
if a type \tcode{T} in \tcode{Types} is some reference type \tcode{X\&},
28652865
the return type is \tcode{X\&}, not \tcode{X\&\&}.
28662866
However, if the element type is a non-reference type \tcode{T},
28672867
the return type is \tcode{T\&\&}.
28682868
\end{note}
28692869

28702870
\pnum
28712871
\begin{note}
2872-
[Note B]
28732872
Constness is shallow.
2874-
If a type \tcode{T} in \tcode{Types} is some reference type \tcode{X\&},
2873+
For the overload marked \#2,
2874+
if a type \tcode{T} in \tcode{Types} is some reference type \tcode{X\&},
28752875
the return type is \tcode{X\&}, not \tcode{const X\&}.
28762876
However, if the element type is a non-reference type \tcode{T},
28772877
the return type is \tcode{const T\&}.

0 commit comments

Comments
 (0)