From Jason Turner

[basic.stc.auto]

Diff to HTML by rtfpessoa

tmp/tmpkb4yrtqn/{from.md → to.md} RENAMED
@@ -1,15 +1,19 @@
1
  #### Automatic storage duration <a id="basic.stc.auto">[[basic.stc.auto]]</a>
2
 
3
- Variables that belong to a block or parameter scope and are not
4
- explicitly declared `static`, `thread_local`, or `extern` have
5
- *automatic storage duration*. The storage for these entities lasts until
6
- the block in which they are created exits.
7
 
8
  [*Note 1*: These variables are initialized and destroyed as described
9
  in  [[stmt.dcl]]. — *end note*]
10
 
 
 
 
 
11
  If a variable with automatic storage duration has initialization or a
12
  destructor with side effects, an implementation shall not destroy it
13
  before the end of its block nor eliminate it as an optimization, even if
14
  it appears to be unused, except that a class object or its copy/move may
15
  be eliminated as specified in  [[class.copy.elision]].
 
1
  #### Automatic storage duration <a id="basic.stc.auto">[[basic.stc.auto]]</a>
2
 
3
+ Variables that belong to a block scope and are not explicitly declared
4
+ `static`, `thread_local`, or `extern` have *automatic storage duration*.
5
+ The storage for such variables lasts until the block in which they are
6
+ created exits.
7
 
8
  [*Note 1*: These variables are initialized and destroyed as described
9
  in  [[stmt.dcl]]. — *end note*]
10
 
11
+ Variables that belong to a parameter scope also have automatic storage
12
+ duration. The storage for a function parameter lasts until immediately
13
+ after its destruction [[expr.call]].
14
+
15
  If a variable with automatic storage duration has initialization or a
16
  destructor with side effects, an implementation shall not destroy it
17
  before the end of its block nor eliminate it as an optimization, even if
18
  it appears to be unused, except that a class object or its copy/move may
19
  be eliminated as specified in  [[class.copy.elision]].