|
3473 | 3473 | \begin{itemdescr}
|
3474 | 3474 | \pnum
|
3475 | 3475 | \constraints
|
3476 |
| -\tcode{is_constructible_v<T, U>} is \tcode{true}, |
3477 |
| -\tcode{is_same_v<remove_cvref_t<U>, in_place_t>} is \tcode{false}, and |
3478 |
| -\tcode{is_same_v<remove_cvref_t<U>, optional>} is \tcode{false}. |
| 3476 | +\begin{itemize} |
| 3477 | +\item \tcode{is_constructible_v<T, U>} is \tcode{true}, |
| 3478 | +\item \tcode{is_same_v<remove_cvref_t<U>, in_place_t>} is \tcode{false}, |
| 3479 | +\item \tcode{is_same_v<remove_cvref_t<U>, optional>} is \tcode{false}, and |
| 3480 | +\item if \tcode{T} is \cv{} \tcode{bool}, |
| 3481 | +\tcode{remove_cvref_t<U>} is not a specialization of \tcode{optional}. |
| 3482 | +\end{itemize} |
3479 | 3483 |
|
3480 | 3484 | \pnum
|
3481 | 3485 | \effects
|
|
3509 | 3513 | \constraints
|
3510 | 3514 | \begin{itemize}
|
3511 | 3515 | \item \tcode{is_constructible_v<T, const U\&>} is \tcode{true}, and
|
3512 |
| -\item \tcode{\exposid{converts-from-any-cvref}<T, optional<U>>} is \tcode{false}. |
| 3516 | +\item if \tcode{T} is not \cv{} \tcode{bool}, |
| 3517 | +\tcode{\exposid{converts-from-any-cvref}<T, optional<U>>} is \tcode{false}. |
3513 | 3518 | \end{itemize}
|
3514 | 3519 |
|
3515 | 3520 | \pnum
|
|
3543 | 3548 | \constraints
|
3544 | 3549 | \begin{itemize}
|
3545 | 3550 | \item \tcode{is_constructible_v<T, U>} is \tcode{true}, and
|
3546 |
| -\item \tcode{\exposid{converts-from-any-cvref}<T, optional<U>>} is \tcode{false}. |
| 3551 | +\item if \tcode{T} is not \cv{} \tcode{bool}, |
| 3552 | +\tcode{\exposid{converts-from-any-cvref}<T, optional<U>>} is \tcode{false}. |
3547 | 3553 | \end{itemize}
|
3548 | 3554 |
|
3549 | 3555 | \pnum
|
|
7509 | 7515 | \item
|
7510 | 7516 | \tcode{is_constructible_v<E, GF>} is \tcode{true}; and
|
7511 | 7517 | \item
|
| 7518 | +if \tcode{T} is not \cv{} \tcode{bool}, |
7512 | 7519 | \tcode{\exposid{converts-from-any-cvref}<T, expected<U, G>>} is \tcode{false}; and
|
7513 | 7520 | \item
|
7514 | 7521 | \tcode{is_constructible_v<unexpected<E>, expected<U, G>\&>} is \tcode{false}; and
|
|
7559 | 7566 | \item
|
7560 | 7567 | \tcode{remove_cvref_t<U>} is not a specialization of \tcode{unexpected}; and
|
7561 | 7568 | \item
|
7562 |
| -\tcode{is_constructible_v<T, U>} is \tcode{true}. |
| 7569 | +\tcode{is_constructible_v<T, U>} is \tcode{true}; and |
| 7570 | +\item |
| 7571 | +if \tcode{T} is \cv{} \tcode{bool}, |
| 7572 | +\tcode{remove_cvref_t<U>} is not a specialization of \tcode{expected}. |
7563 | 7573 | \end{itemize}
|
7564 | 7574 |
|
7565 | 7575 | \pnum
|
|
0 commit comments