This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of Resolved status.

### 1275. Creating and setting futures

Section: 32.9 [futures] Status: Resolved Submitter: Jonathan Wakely Opened: 2009-11-22 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [futures].

View all issues with Resolved status.

Discussion:

[futures.unique_future]/1 should be updated to mention `async`.

[futures.shared_future]/1 should also be updated for `async`. That paragraph also says

> ... Its value or exception can be set by use of a `shared_future`, `promise` (32.9.6 [futures.promise]), or `packaged_task` (32.9.10 [futures.task]) object that shares the same associated state.

How can the value be set by a `shared_future`?

99 [futures.atomic_future]/1 says

> An `atomic_future` object can only be created by use of a `promise` (32.9.6 [futures.promise]) or `packaged_task` (32.9.10 [futures.task]) object.

which is wrong, it's created from a `std::future`, which could have been default-constructed. That paragraph should be closer to the text of [futures.shared_future]/1, and should also mention `async`.

[ 2010 Pittsburgh: Moved to NAD Editorial Resolved. Rationale added below. ]

Rationale:

Solved by N3058.

Proposed resolution: