From Jason Turner

[replacement.functions]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp191x20qf/{from.md → to.md} +34 -15
tmp/tmp191x20qf/{from.md → to.md} RENAMED
@@ -4,28 +4,47 @@ Clauses  [[language.support]] through  [[thread]] and Annex  [[depr]]
4
  describe the behavior of numerous functions defined by the C++standard
5
  library. Under some circumstances, however, certain of these function
6
  descriptions also apply to replacement functions defined in the
7
  program ([[definitions]]).
8
 
9
- A C++program may provide the definition for any of twelve dynamic memory
10
- allocation function signatures declared in header `<new>` (
11
  [[basic.stc.dynamic]], [[support.dynamic]]):
12
 
13
- - `operator new(std::size_t)`
14
- - `operator new(std::size_t, const std::nothrow_t&)`
15
- - `operator new[](std::size_t)`
16
- - `operator new[](std::size_t, const std::nothrow_t&)`
17
- - `operator delete(void*)`
18
- - `operator delete(void*, const std::nothrow_t&)`
19
- - `operator delete[](void*)`
20
- - `operator delete[](void*, const std::nothrow_t&)`
21
- - `operator delete(void*, std::size_t)`
22
- - `operator delete(void*, std::size_t, const std::nothrow_t&)`
23
- - `operator delete[](void*, std::size_t)`
24
- - `operator delete[](void*, std::size_t, const std::nothrow_t&)`
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
 
26
  The program’s definitions are used instead of the default versions
27
  supplied by the implementation ([[support.dynamic]]). Such replacement
28
  occurs prior to program startup ([[basic.def.odr]], [[basic.start]]).
29
- The program’s definitions shall not be specified as `inline`. No
30
  diagnostic is required.
31
 
 
4
  describe the behavior of numerous functions defined by the C++standard
5
  library. Under some circumstances, however, certain of these function
6
  descriptions also apply to replacement functions defined in the
7
  program ([[definitions]]).
8
 
9
+ A C++program may provide the definition for any of the following dynamic
10
+ memory allocation function signatures declared in header `<new>` (
11
  [[basic.stc.dynamic]], [[support.dynamic]]):
12
 
13
+ ``` cpp
14
+ operator new(std::size_t)
15
+ operator new(std::size_t, std::align_val_t)
16
+ operator new(std::size_t, const std::nothrow_t&)
17
+ operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
18
+ ```
19
+
20
+ ``` cpp
21
+ operator delete(void*)
22
+ operator delete(void*, std::size_t)
23
+ operator delete(void*, std::align_val_t)
24
+ operator delete(void*, std::size_t, std::align_val_t)
25
+ operator delete(void*, const std::nothrow_t&)
26
+ operator delete(void*, std::align_val_t, const std::nothrow_t&)
27
+ ```
28
+
29
+ ``` cpp
30
+ operator new[](std::size_t)
31
+ operator new[](std::size_t, std::align_val_t)
32
+ operator new[](std::size_t, const std::nothrow_t&)
33
+ operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
34
+ ```
35
+
36
+ ``` cpp
37
+ operator delete[](void*)
38
+ operator delete[](void*, std::size_t)
39
+ operator delete[](void*, std::align_val_t)
40
+ operator delete[](void*, std::size_t, std::align_val_t)
41
+ operator delete[](void*, const std::nothrow_t&)
42
+ operator delete[](void*, std::align_val_t, const std::nothrow_t&)
43
+ ```
44
 
45
  The program’s definitions are used instead of the default versions
46
  supplied by the implementation ([[support.dynamic]]). Such replacement
47
  occurs prior to program startup ([[basic.def.odr]], [[basic.start]]).
48
+ The program’s declarations shall not be specified as `inline`. No
49
  diagnostic is required.
50