From 6aa3d3f16ecb1a0a5746821c801ec4bcadc3e782 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Wed, 2 Oct 2024 12:50:49 +0100 Subject: [PATCH] New P/R for 4158 --- xml/issue4158.xml | 44 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/xml/issue4158.xml b/xml/issue4158.xml index 55d16f0b0a..8e182dbf39 100644 --- a/xml/issue4158.xml +++ b/xml/issue4158.xml @@ -6,7 +6,7 @@
Jonathan Wakely 19 Sep 2024 -99 +3

@@ -41,9 +41,13 @@ That is what the `std::promise` move assignment does (see p9). Both libstdc++ and libc++ abandon the state, despite what the standard says.

-
- +2024-10-02; Reflector poll +

+Set priority to 3 after reflector poll. +

+ +

This wording is relative to .

@@ -68,6 +72,40 @@ calls `packaged_task(std::move(rhs)).swap(*this)`. +
+ +2024-10-02; Jonathan provides improved wording +

+Following reflector discussion, remove the "Releases any shared state" text +completely. The remaining effects imply that the state will be abandoned anyway.

+ + + + +

+This wording is relative to . +

+
    +
  1. Modify as indicated:

    +
    +
    +packaged_task& operator=(packaged_task&& rhs) noexcept;
    +
    +

    -11- Effects: +

      +
    1. (11.1) — +Releases +any shared state (); +
    2. +
    3. (11.2) — +calls `packaged_task(std::move(rhs)).swap(*this)`. +
    4. +
    +

    +

    -?- Returns: `*this`.

    +
    +
  2. +