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

### 2891. Relax library requirements on `volatile` types

Section: 16.4.6 [conforming] Status: NAD Submitter: Great Britain Opened: 2017-02-03 Last modified: 2017-07-16

Priority: Not Prioritized

View all other issues in [conforming].

View all issues with NAD status.

Discussion:

Addresses GB 35

Most implementations have poor testing and support for instantiating standard library templates with `volatile`-qualified types. We should grant a library-freedom to conforming implementations so that support for `volatile` (and `const volatile`) qualified types in standard library templates is not required unless explicitly specified — and mandate such support for all templates in the `<type_traits>` header. Additional support is already specified in most places we would be interested (e.g., tuple API). We may want to additionally guarantee support through forwarding references.

Proposed change: add a new 17.6.5.x Volatile Qualified Types [res.on.volatile.type] describing the intended level of support for `volatile` qualifiers.

[2017-07 Toronto Thurs Issue Prioritization]

This is not a defect, but a feature request (and a large one). Papers welcome, but closing as NAD

Proposed resolution: