Title
Missing definition for placement allocation/deallocation function
Status
open
Section
7.6.2.8 [expr.new]
Submitter
Jim X

Created on 2022-04-14.00:00:00 last changed 18 months ago

Messages

Date: 2023-06-20.19:34:52

CWG 2023-06-17

Replace "placement allocation / deallocation function" with "not a usual allocation / deallocation function".

Date: 2023-06-20.19:34:52

Subclause 7.6.2.8 [expr.new] has multiple references to "placement allocation function" and "placement deallocation function", but those terms are never defined. The term "usual deallocation function" is defined in 6.7.6.5.3 [basic.stc.dynamic.deallocation] paragraph 3:

... A usual deallocation function is a deallocation function whose parameters after the first are
  • optionally, a parameter of type std::destroying_delete_t, then
  • optionally, a parameter of type std::size_t, [ Footnote: ... ] then
  • optionally, a parameter of type std::align_val_t.

Possible resolution:

  1. Split 6.7.6.5.2 [basic.stc.dynamic.allocation] paragraph 1 and change it as follows:

    ... The value of the first parameter is interpreted as the requested size of the allocation. A usual allocation function is an allocation function with no parameters after the first or with a single parameter of type std::align_val_t after the first.

    An allocation function can be a function template. ...

History
Date User Action Args
2023-06-20 19:34:52adminsetmessages: + msg7335
2022-04-14 00:00:00admincreate