Created on 2019-10-25.00:00:00 last changed 45 months ago
Proposed resolution:
This wording is relative to N4835.
Modify [allocator.members] as indicated:
[[nodiscard]] constexpr T* allocate(size_t n);-?- Mandates: T is not an incomplete type ([basic.types]).
-2- Returns: A pointer to the initial element of an array of storage of size n * sizeof(T), aligned appropriately for objects of type T. […]
[ 2019-11 Status to 'Ready' in Monday issue prioritization in Belfast ]
In C++20 the std::allocator<void> explicit specialization is gone, which means it uses the primary template, which has allocate and deallocate members.
Although it's implied by the use of sizeof(T), std::allocator<T>::allocate doesn't have an explicit precondition that the value type is complete.History | |||
---|---|---|---|
Date | User | Action | Args |
2021-02-25 10:48:01 | admin | set | status: wp -> c++20 |
2020-02-24 16:02:59 | admin | set | status: voting -> wp |
2020-01-17 04:54:50 | admin | set | status: ready -> voting |
2019-11-04 13:23:43 | admin | set | messages: + msg10727 |
2019-11-04 13:23:43 | admin | set | status: new -> ready |
2019-10-31 19:05:20 | admin | set | messages: + msg10717 |
2019-10-25 00:00:00 | admin | create |