tmp/tmpfyc2us4x/{from.md → to.md}
RENAMED
|
@@ -24,11 +24,11 @@ from any previously returned value `p1`, unless that value `p1` was
|
|
| 24 |
subsequently passed to a replaceable deallocation function. Furthermore,
|
| 25 |
for the library allocation functions in [[new.delete.single]] and
|
| 26 |
[[new.delete.array]], `p0` represents the address of a block of storage
|
| 27 |
disjoint from the storage for any other object accessible to the caller.
|
| 28 |
The effect of indirecting through a pointer returned from a request for
|
| 29 |
-
zero size is undefined.[^
|
| 30 |
|
| 31 |
For an allocation function other than a reserved placement allocation
|
| 32 |
function [[new.delete.placement]], the pointer returned on a successful
|
| 33 |
call shall represent the address of storage that is aligned as follows:
|
| 34 |
|
|
@@ -43,12 +43,12 @@ call shall represent the address of storage that is aligned as follows:
|
|
| 43 |
|
| 44 |
An allocation function that fails to allocate storage can invoke the
|
| 45 |
currently installed new-handler function [[new.handler]], if any.
|
| 46 |
|
| 47 |
[*Note 3*: A program-supplied allocation function can obtain the
|
| 48 |
-
|
| 49 |
-
|
| 50 |
|
| 51 |
An allocation function that has a non-throwing exception specification
|
| 52 |
[[except.spec]] indicates failure by returning a null pointer value. Any
|
| 53 |
other allocation function never returns a null pointer value and
|
| 54 |
indicates failure only by throwing an exception [[except.throw]] of a
|
|
@@ -63,8 +63,10 @@ calls to the functions in the C++ standard library.
|
|
| 63 |
|
| 64 |
[*Note 4*: In particular, a global allocation function is not called to
|
| 65 |
allocate storage for objects with static storage duration
|
| 66 |
[[basic.stc.static]], for objects or references with thread storage
|
| 67 |
duration [[basic.stc.thread]], for objects of type `std::type_info`
|
| 68 |
-
[[expr.typeid]],
|
|
|
|
|
|
|
| 69 |
[[except.throw]]. — *end note*]
|
| 70 |
|
|
|
|
| 24 |
subsequently passed to a replaceable deallocation function. Furthermore,
|
| 25 |
for the library allocation functions in [[new.delete.single]] and
|
| 26 |
[[new.delete.array]], `p0` represents the address of a block of storage
|
| 27 |
disjoint from the storage for any other object accessible to the caller.
|
| 28 |
The effect of indirecting through a pointer returned from a request for
|
| 29 |
+
zero size is undefined.[^9]
|
| 30 |
|
| 31 |
For an allocation function other than a reserved placement allocation
|
| 32 |
function [[new.delete.placement]], the pointer returned on a successful
|
| 33 |
call shall represent the address of storage that is aligned as follows:
|
| 34 |
|
|
|
|
| 43 |
|
| 44 |
An allocation function that fails to allocate storage can invoke the
|
| 45 |
currently installed new-handler function [[new.handler]], if any.
|
| 46 |
|
| 47 |
[*Note 3*: A program-supplied allocation function can obtain the
|
| 48 |
+
currently installed `new_handler` using the `std::get_new_handler`
|
| 49 |
+
function [[get.new.handler]]. — *end note*]
|
| 50 |
|
| 51 |
An allocation function that has a non-throwing exception specification
|
| 52 |
[[except.spec]] indicates failure by returning a null pointer value. Any
|
| 53 |
other allocation function never returns a null pointer value and
|
| 54 |
indicates failure only by throwing an exception [[except.throw]] of a
|
|
|
|
| 63 |
|
| 64 |
[*Note 4*: In particular, a global allocation function is not called to
|
| 65 |
allocate storage for objects with static storage duration
|
| 66 |
[[basic.stc.static]], for objects or references with thread storage
|
| 67 |
duration [[basic.stc.thread]], for objects of type `std::type_info`
|
| 68 |
+
[[expr.typeid]], for an object of type
|
| 69 |
+
`std::contracts::contract_violation` when a contract violation occurs
|
| 70 |
+
[[basic.contract.eval]], or for an exception object
|
| 71 |
[[except.throw]]. — *end note*]
|
| 72 |
|