Skip to content

Commit 606502a

Browse files
authored
Merge 2023-06 LWG Motion 13
P2013R5 Freestanding Language: Optional ::operator new
2 parents b2cc526 + a2b2366 commit 606502a

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

source/support.tex

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2279,6 +2279,25 @@
22792279
is not a valid alignment value,
22802280
the behavior is undefined.
22812281

2282+
\pnum
2283+
On freestanding implementations,
2284+
it is \impldef{whether freestanding default replaceable global allocation functions satisfy required behavior}
2285+
whether the default versions of the replaceable global allocation functions
2286+
satisfy the required behaviors
2287+
described in \ref{new.delete.single} and \ref{new.delete.array}.
2288+
\begin{note}
2289+
A freestanding implementation's default versions of
2290+
the replaceable global allocation functions
2291+
can cause undefined behavior when invoked.
2292+
During constant evaluation,
2293+
the behaviors of those default versions are irrelevant,
2294+
as those calls are omitted\iref{expr.new}.
2295+
\end{note}
2296+
2297+
\recommended
2298+
If any of the default versions of the replaceable global allocation functions
2299+
meet the requirements of a hosted implementation, they all should.
2300+
22822301
\newcommand{\replaceabledesc}[1]{%
22832302
A \Cpp{} program may define functions with #1 of these function signatures,
22842303
and thereby displace the default versions defined by the

0 commit comments

Comments
 (0)