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

### 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 enumeration The `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 enumeration The `enum class` type `perms` is a bitmask type (C++11 §17.5.2.1.3) that specifies bitmask constants used to identify file permissions.