@@ -18030,38 +18030,38 @@
18030
18030
\tcode{\placeholdernc{COPYCV}(const int, volatile short)} is an alias for
18031
18031
\tcode{const volatile short}.
18032
18032
\end{example}
18033
- \item \tcode{\placeholdernc{COND_RES }(X, Y)} be
18033
+ \item \tcode{\placeholdernc{COND-RES }(X, Y)} be
18034
18034
\tcode{decltype(false ?\ declval<X(\&)()>()() :\ declval<Y(\&)()>()())}.
18035
18035
\end{itemize}
18036
18036
Given types \tcode{A} and \tcode{B},
18037
18037
let \tcode{X} be \tcode{remove_reference_t<A>},
18038
18038
let \tcode{Y} be \tcode{remove_reference_t<B>}, and
18039
- let \tcode{\placeholdernc{COMMON_REF }(A, B)} be:
18039
+ let \tcode{\placeholdernc{COMMON-\brk{}REF }(A, B)} be:
18040
18040
\begin{itemize}
18041
18041
\item If \tcode{A} and \tcode{B} are both lvalue reference types,
18042
- \tcode{\placeholdernc{COMMON_REF }(A, B)} is
18043
- \tcode{\placeholdernc{COND_RES }(\placeholdernc{COPYCV}(X, Y) \&,
18042
+ \tcode{\placeholdernc{COMMON-REF }(A, B)} is
18043
+ \tcode{\placeholdernc{COND-RES }(\placeholdernc{COPYCV}(X, Y) \&,
18044
18044
\placeholdernc{COPYCV}(\brk{}Y, X) \&)} if that type exists
18045
18045
and is a reference type.
18046
18046
\item Otherwise, let \tcode{C} be
18047
- \tcode{remove_reference_t<\placeholdernc{COMMON_REF }(X\&, Y\&)>\&\&}.
18047
+ \tcode{remove_reference_t<\placeholdernc{COMMON-REF }(X\&, Y\&)>\&\&}.
18048
18048
If \tcode{A} and \tcode{B} are both rvalue reference types,
18049
18049
\tcode{C} is well-formed, and
18050
18050
\tcode{is_convertible_v<A, C> \&\& is_convertible_v<B, C>} is \tcode{true},
18051
- then \tcode{\placeholdernc{COMMON_REF }(A, B)} is \tcode{C}.
18051
+ then \tcode{\placeholdernc{COMMON-REF }(A, B)} is \tcode{C}.
18052
18052
\item Otherwise, let \tcode{D} be
18053
- \tcode{\placeholdernc{COMMON_REF }(const X\&, Y\&)}. If \tcode{A} is an rvalue
18053
+ \tcode{\placeholdernc{COMMON-REF }(const X\&, Y\&)}. If \tcode{A} is an rvalue
18054
18054
reference and \tcode{B} is an lvalue reference and \tcode{D} is
18055
18055
well-formed and \tcode{is_convertible_v<A, D>} is
18056
- \tcode{true}, then \tcode{\placeholdernc{COMMON_REF }(A, B)} is \tcode{D}.
18056
+ \tcode{true}, then \tcode{\placeholdernc{COMMON-REF }(A, B)} is \tcode{D}.
18057
18057
\item Otherwise, if \tcode{A} is an lvalue reference and \tcode{B}
18058
- is an rvalue reference, then \tcode{\placeholdernc{COMMON_REF }(A, B)} is
18059
- \tcode{\placeholdernc{COMMON_REF }(B, A)}.
18060
- \item Otherwise, \tcode{\placeholdernc{COMMON_REF }(A, B)} is ill-formed.
18058
+ is an rvalue reference, then \tcode{\placeholdernc{COMMON-REF }(A, B)} is
18059
+ \tcode{\placeholdernc{COMMON-REF }(B, A)}.
18060
+ \item Otherwise, \tcode{\placeholdernc{COMMON-REF }(A, B)} is ill-formed.
18061
18061
\end{itemize}
18062
18062
18063
18063
If any of the types computed above is ill-formed, then
18064
- \tcode{\placeholdernc{COMMON_REF }(A, B)} is ill-formed.
18064
+ \tcode{\placeholdernc{COMMON-REF }(A, B)} is ill-formed.
18065
18065
18066
18066
\pnum
18067
18067
Note A:
@@ -18102,10 +18102,10 @@
18102
18102
\end{codeblock}
18103
18103
denotes a valid type, let \tcode{C} denote that type.
18104
18104
\item Otherwise, if
18105
- \tcode{\placeholdernc{COND_RES }(\placeholdernc{CREF}(D1),
18105
+ \tcode{\placeholdernc{COND-RES }(\placeholdernc{CREF}(D1),
18106
18106
\placeholdernc{CREF}(D2))}
18107
18107
denotes a type, let \tcode{C} denote the type
18108
- \tcode{decay_t<\placeholdernc{COND_RES }(\placeholdernc{CREF}(D1),
18108
+ \tcode{decay_t<\placeholdernc{COND-RES }(\placeholdernc{CREF}(D1),
18109
18109
\placeholdernc{CREF}(D2))>}.
18110
18110
\end{itemize}
18111
18111
In either case, the member \grammarterm{typedef-name} \tcode{type} shall denote
@@ -18155,15 +18155,15 @@
18155
18155
denote the two types in the pack \tcode{T}. Then
18156
18156
\begin{itemize}
18157
18157
\item If \tcode{T1} and \tcode{T2} are reference types and
18158
- \tcode{\placeholdernc{COMMON_REF }(T1, T2)} is well-formed, then the member
18158
+ \tcode{\placeholdernc{COMMON-REF }(T1, T2)} is well-formed, then the member
18159
18159
typedef \tcode{type} denotes that type.
18160
18160
18161
18161
\item Otherwise, if
18162
18162
\tcode{basic_common_reference<remove_cvref_t<T1>, remove_cvref_t<T2>,
18163
18163
\brk{}\placeholdernc{XREF}(\brk{}T1), \placeholdernc{XREF}(T2)>::type}
18164
18164
is well-formed, then the member typedef \tcode{type} denotes that type.
18165
18165
18166
- \item Otherwise, if \tcode{\placeholdernc{COND_RES }(T1, T2)} is well-formed,
18166
+ \item Otherwise, if \tcode{\placeholdernc{COND-RES }(T1, T2)} is well-formed,
18167
18167
then the member typedef \tcode{type} denotes that type.
18168
18168
18169
18169
\item Otherwise, if \tcode{common_type_t<T1, T2>} is well-formed, then the
0 commit comments