Created on 2011-11-20.00:00:00 last changed 143 months ago
Proposed resolution:
This wording is relative to the FDIS.
Change [futures.overview] paragraph 2 as indicated:
The enum type launch is
an implementation-defineda bitmask type ([bitmask.types]) with launch::async and launch::deferred denoting individual bits. [ Note: Implementations can provide bitmasks to specify restrictions on task interaction by functions launched by async() applicable to a corresponding subset of available launch policies. Implementations can extend the behavior of the first overload of async() by adding their extensions to the launch policy under the “as if” rule. — end note ]
[ 2011-12-02 Moved to Tentatively Ready after 6 positive votes on c++std-lib. ]
[futures.overview] says std::launch is an implementation-defined bitmask type, which would usually mean the implementation can choose whether to define an enumeration type, or a bitset, or an integer type. But in the case of std::launch it's required to be a scoped enumeration type,
enum class launch : unspecified {
async = unspecified,
deferred = unspecified,
implementation-defined
};
so what is implementation-defined about it, and what is an implementation supposed to document about its choice?
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2014-02-20 13:20:35 | admin | set | status: wp -> c++14 |
| 2012-02-12 18:36:43 | admin | set | status: voting -> wp |
| 2012-02-09 04:07:48 | admin | set | status: ready -> voting |
| 2011-12-02 00:20:21 | admin | set | messages: + msg5941 |
| 2011-12-02 00:20:21 | admin | set | status: new -> ready |
| 2011-11-29 22:29:38 | admin | set | messages: + msg5935 |
| 2011-11-20 00:00:00 | admin | create | |