2701. Unclear requirement in [memory.resource.private]

Section: 23.12.2.2 [mem.res.private] Status: NAD Editorial Submitter: Jonathan Wakely Opened: 2016-05-04 Last modified: 2017-06-16

Priority: 3

View all other issues in [mem.res.private].

View all issues with NAD Editorial status.

Discussion:

[memory.resource.private] says:

virtual void* do_allocate(size_t bytes, size_t alignment) = 0;

-1- Requires: Alignment shall be a power of two.

Is that supposed to be a requirement on the alignment specified by the alignment parameter? If so the word "Alignment" should not be capitalized and in text font.

[2016-05 Issues Telecon]

The resolution should reference [basic.align]. Jonathan to update the wording.

[2016-08 - Chicago]

Thurs AM: Moved to NAD Editorial. Will change "Alignment" to alignment and add a reference to [basic.align]

Proposed resolution:

  1. Modify [memory.resource.private] paragraph 1 as shown:

    virtual void* do_allocate(size_t bytes, size_t alignment) = 0;
    

    -1- Requires: AlignmentThe alignment specified by alignment shall be a power of two.