2644. [filesys.ts] [PDTS] enum classes copy_options and perms should be bitmask types

Section: 10.2 [filesys.ts::enum.copy_options], 10.3 [filesys.ts::enum.perms] Status: TS Submitter: P.J. Plauger Opened: 2014-01-30 Last modified: 2017-07-30

Priority: Not Prioritized

View all other issues in [filesys.ts::enum.copy_options].

View all issues with TS status.

Discussion:

Addresses: filesys.ts

enum classes copy_options and perms should be bitmask types.

[2014-02-08 Daniel comments and suggests wording]

Since both enum types contain enumeration values that denote the value zero, they are currently not allowed to be described as bitmask types. This issue depends on LWG issue 1450, which — if it would be accepted — would allow for applying this concept to these enumeration types.

[2014-02-13 LWG/SG-3 Issaquah: Proposed wording accepted.]

Proposed resolution:

This wording is relative to SG3 working draft and assumes that LWG 1450 has been resolved.

  1. Change [enum.copy_options] as indicated:

    This enumerationThe enum class type copy_options is a bitmask type (C++11 §17.5.2.1.3) that specifies bitmask constants used to control the semantics of copy operations. The constants are specified in option groups. […]

  2. Change [enum.perms] as indicated:

    This enumerationThe enum class type perms is a bitmask type (C++11 §17.5.2.1.3) that specifies bitmask constants used to identify file permissions.