Skip to content

Commit

Permalink
New P/R for 4158
Browse files Browse the repository at this point in the history
  • Loading branch information
jwakely committed Oct 2, 2024
1 parent 97a27b3 commit 6aa3d3f
Showing 1 changed file with 41 additions and 3 deletions.
44 changes: 41 additions & 3 deletions xml/issue4158.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<section><sref ref="[futures.task.members]"/></section>
<submitter>Jonathan Wakely</submitter>
<date>19 Sep 2024</date>
<priority>99</priority>
<priority>3</priority>

<discussion>
<p>
Expand Down Expand Up @@ -41,9 +41,13 @@ That is what the `std::promise` move assignment does
(see <sref ref="[futures.promise]"/> p9).
Both libstdc++ and libc++ abandon the state, despite what the standard says.
</p>
</discussion>

<resolution>
<note>2024-10-02; Reflector poll</note>
<p>
Set priority to 3 after reflector poll.
</p>

<superseded>
<p>
This wording is relative to <paper num="N4988"/>.
</p>
Expand All @@ -68,6 +72,40 @@ calls `packaged_task(std::move(rhs)).swap(*this)`.
</blockquote>
</li>
</ol>
</superseded>

<note>2024-10-02; Jonathan provides improved wording</note>
<p>
Following reflector discussion, remove the "Releases any shared state" text
completely. The remaining effects imply that the state will be abandoned anyway.</p>

</discussion>

<resolution>
<p>
This wording is relative to <paper num="N4988"/>.
</p>
<ol>
<li><p>Modify <sref ref="[futures.task.members]"/> as indicated:</p>
<blockquote>
<pre>
packaged_task&amp; operator=(packaged_task&amp;&amp; rhs) noexcept;
</pre>
<p>-11- <i>Effects</i>:
<ol style="list-style-type: none">
<li><del>(11.1) &mdash;
Releases
any shared state (<sref ref="[futures.state]"/>);</del>
</li>
<li><del>(11.2) &mdash;
calls</del> `packaged_task(std::move(rhs)).swap(*this)`.
</li>
</ol>
</p>
<p><ins>-?- <i>Returns</i>: `*this`.</ins></p>
</blockquote>
</li>
</ol>
</resolution>

</issue>

0 comments on commit 6aa3d3f

Please sign in to comment.