File tree Expand file tree Collapse file tree 1 file changed +50
-3
lines changed
Expand file tree Collapse file tree 1 file changed +50
-3
lines changed Original file line number Diff line number Diff line change @@ -30,9 +30,7 @@ Set priority to 3 after reflector poll.
3030"Shouldn't it be ill-formed only if instantiated?"
3131</p >
3232
33- </discussion >
34-
35- <resolution >
33+ <superseded >
3634<p >
3735This wording is relative to <paper num =" N4988" />.
3836</p >
@@ -71,6 +69,55 @@ namespace std {
7169</blockquote >
7270</li >
7371</ol >
72+ </superseded >
73+
74+ <note >2025-02-07; Jonathan provides improved wording</note >
75+
76+ </discussion >
77+
78+ <resolution >
79+ <p >
80+ This wording is relative to <paper num =" N5001" />.
81+ </p >
82+
83+ <ol >
84+ <li ><p >Modify <sref ref =" [futures.task.general]" /> as indicated:</p >
85+
86+ <blockquote >
87+ <p >
88+ [… ]
89+ <p />
90+ -2- When the <tt >packaged_task</tt > object is invoked, its stored task is invoked and the result
91+ (whether normal or exceptional) stored in the shared state. Any futures that share the shared state
92+ will then be able to access the stored result.
93+ </p >
94+ <blockquote >
95+ <pre >
96+ namespace std {
97+ template< class> class packaged_task; // <i >not defined</i >
98+
99+ template< class R, class... ArgTypes>
100+ class packaged_task< R(ArgTypes...)> {
101+ [… ]
102+ };
103+
104+ template< class R, class... ArgTypes>
105+ packaged_task(R (*)(ArgTypes...)) -> packaged_task< R(ArgTypes...)> ;
106+
107+ template< class F> packaged_task(F) -> packaged_task< <i >see below</i >> ;
108+ }
109+ </pre >
110+ </blockquote >
111+ <p >
112+ <ins >-?-
113+ If the definition of a specialization
114+ <code >packaged_task< R(Args...)> </code > is instantiated for
115+ an rvalue reference type `R`, the program is ill-formed.
116+ </ins >
117+ </p >
118+ </blockquote >
119+ </li >
120+ </ol >
74121</resolution >
75122
76123</issue >
You can’t perform that action at this time.
0 commit comments