tmp/tmp22plae5_/{from.md → to.md}
RENAMED
|
@@ -3,16 +3,16 @@
|
|
| 3 |
Variables with static storage duration are initialized as a consequence
|
| 4 |
of program initiation. Variables with thread storage duration are
|
| 5 |
initialized as a consequence of thread execution. Within each of these
|
| 6 |
phases of initiation, initialization occurs as follows.
|
| 7 |
|
| 8 |
-
*Constant initialization* is performed if a variable
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
*static initialization*; all other initialization is
|
| 15 |
*dynamic initialization*. All static initialization strongly happens
|
| 16 |
before [[intro.races]] any dynamic initialization.
|
| 17 |
|
| 18 |
[*Note 1*: The dynamic initialization of non-block variables is
|
|
|
|
| 3 |
Variables with static storage duration are initialized as a consequence
|
| 4 |
of program initiation. Variables with thread storage duration are
|
| 5 |
initialized as a consequence of thread execution. Within each of these
|
| 6 |
phases of initiation, initialization occurs as follows.
|
| 7 |
|
| 8 |
+
*Constant initialization* is performed if a variable with static or
|
| 9 |
+
thread storage duration is constant-initialized [[expr.const]]. If
|
| 10 |
+
constant initialization is not performed, a variable with static storage
|
| 11 |
+
duration [[basic.stc.static]] or thread storage duration
|
| 12 |
+
[[basic.stc.thread]] is zero-initialized [[dcl.init]]. Together,
|
| 13 |
+
zero-initialization and constant initialization are called
|
| 14 |
*static initialization*; all other initialization is
|
| 15 |
*dynamic initialization*. All static initialization strongly happens
|
| 16 |
before [[intro.races]] any dynamic initialization.
|
| 17 |
|
| 18 |
[*Note 1*: The dynamic initialization of non-block variables is
|