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.

### 2717. `scoped_allocator_adaptor` uses `forward` to do `move`'s job

Section: 20.13.4 [allocator.adaptor.members] Status: NAD Submitter: Billy Robert O'Neal III Opened: 2016-05-24 Last modified: 2017-07-18

Priority: Not Prioritized

View all other issues in [allocator.adaptor.members].

View all issues with NAD status.

Discussion:

`scoped_allocator_adaptor` is specified to use `forward` when what it is really doing is moving elements. It should use `move`.

Previous resolution [SUPERSEDED]:

> This wording is relative to N4582.

> 1. Edit 20.13.4 [allocator.adaptor.members] p15 as indicated:

>    >     template <class T1, class T2, class U, class V>
>    >       void construct(pair<T1, T2>* p, pair<U, V>&& x);

>    > > Effects: Equivalent to `this->construct(p, piecewise_construct, forward_as_tuple(std::forwardmove<U>(x.first)), forward_as_tuple(std::forwardmove<V>(x.second)))`.

Proposed resolution:

Withdrawn by the submitter, since the prerequisites were incorrect.