Skip to content

Commit 6b3c8a8

Browse files
burblebeetkoeppe
authored andcommitted
LWG3476 thread and jthread constructors require that the parameters be move-constructible but never move construct the parameters
1 parent 0307edc commit 6b3c8a8

File tree

1 file changed

+3
-23
lines changed

1 file changed

+3
-23
lines changed

source/threads.tex

Lines changed: 3 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1199,17 +1199,10 @@
11991199
The following are all \tcode{true}:
12001200
\begin{itemize}
12011201
\item \tcode{is_constructible_v<decay_t<F>, F>},
1202-
\item \tcode{(is_constructible_v<decay_t<Args>, Args> \&\& ...)},
1203-
\item \tcode{is_move_constructible_v<decay_t<F>>},
1204-
\item \tcode{(is_move_constructible_v<decay_t<Args>> \&\& ...)}, and
1202+
\item \tcode{(is_constructible_v<decay_t<Args>, Args> \&\& ...)}, and
12051203
\item \tcode{is_invocable_v<decay_t<F>, decay_t<Args>...>}.
12061204
\end{itemize}
12071205

1208-
\pnum
1209-
\expects
1210-
\tcode{decay_t<F>} and each type in \tcode{decay_t<Args>} meet the
1211-
\oldconcept{MoveConstructible} requirements.
1212-
12131206
\pnum
12141207
\effects
12151208
The new thread of execution executes
@@ -1536,17 +1529,10 @@
15361529
The following are all \tcode{true}:
15371530
\begin{itemize}
15381531
\item \tcode{is_constructible_v<decay_t<F>, F>},
1539-
\item \tcode{(is_constructible_v<decay_t<Args>, Args> \&\& ...)},
1540-
\item \tcode{is_move_constructible_v<decay_t<F>>},
1541-
\item \tcode{(is_move_constructible_v<decay_t<Args>> \&\& ...)}, and
1532+
\item \tcode{(is_constructible_v<decay_t<Args>, Args> \&\& ...)}, and
15421533
\item \tcode{is_invocable_v<decay_t<F>, decay_t<Args>...> ||} \\ \tcode{is_invocable_v<decay_t<F>, stop_token, decay_t<Args>...>}.
15431534
\end{itemize}
15441535

1545-
\pnum
1546-
\expects
1547-
\tcode{decay_t<F>} and each type in \tcode{decay_t<Args>} meet the
1548-
\oldconcept{MoveConstructible} requirements.
1549-
15501536
\pnum
15511537
\effects
15521538
Initializes \tcode{ssource}.
@@ -7100,16 +7086,10 @@
71007086
The following are all \tcode{true}:
71017087
\begin{itemize}
71027088
\item \tcode{is_constructible_v<decay_t<F>, F>},
7103-
\item \tcode{(is_constructible_v<decay_t<Args>, Args> \&\&...)},
7104-
\item \tcode{is_move_constructible_v<decay_t<F>>},
7105-
\item \tcode{(is_move_constructible_v<decay_t<Args>> \&\&...)}, and
7089+
\item \tcode{(is_constructible_v<decay_t<Args>, Args> \&\&...)}, and
71067090
\item \tcode{is_invocable_v<decay_t<F>, decay_t<Args>...>}.
71077091
\end{itemize}
71087092

7109-
\pnum
7110-
\expects
7111-
\tcode{decay_t<F>} and each type in \tcode{decay_t<Args>} meet the \oldconcept{MoveConstructible} requirements.
7112-
71137093
\pnum
71147094
\effects
71157095
The first function

0 commit comments

Comments
 (0)