tmp/tmp0yq09p8v/{from.md → to.md}
RENAMED
|
@@ -7,26 +7,26 @@ handler will be invoked only by throwing an exception in code executed
|
|
| 7 |
in the handler’s try block or in functions called from the handler’s try
|
| 8 |
block.
|
| 9 |
|
| 10 |
``` bnf
|
| 11 |
try-block:
|
| 12 |
-
|
| 13 |
```
|
| 14 |
|
| 15 |
``` bnf
|
| 16 |
function-try-block:
|
| 17 |
-
|
| 18 |
```
|
| 19 |
|
| 20 |
``` bnf
|
| 21 |
handler-seq:
|
| 22 |
handler handler-seqₒₚₜ
|
| 23 |
```
|
| 24 |
|
| 25 |
``` bnf
|
| 26 |
handler:
|
| 27 |
-
|
| 28 |
```
|
| 29 |
|
| 30 |
``` bnf
|
| 31 |
exception-declaration:
|
| 32 |
attribute-specifier-seqₒₚₜ type-specifier-seq declarator
|
|
@@ -40,12 +40,12 @@ appertains to the parameter of the catch clause [[except.handle]].
|
|
| 40 |
A *try-block* is a *statement* [[stmt.pre]].
|
| 41 |
|
| 42 |
[*Note 1*: Within this Clause “try block” is taken to mean both
|
| 43 |
*try-block* and *function-try-block*. — *end note*]
|
| 44 |
|
| 45 |
-
|
| 46 |
-
|
| 47 |
|
| 48 |
[*Example 1*:
|
| 49 |
|
| 50 |
``` cpp
|
| 51 |
void f() {
|
|
|
|
| 7 |
in the handler’s try block or in functions called from the handler’s try
|
| 8 |
block.
|
| 9 |
|
| 10 |
``` bnf
|
| 11 |
try-block:
|
| 12 |
+
try compound-statement handler-seq
|
| 13 |
```
|
| 14 |
|
| 15 |
``` bnf
|
| 16 |
function-try-block:
|
| 17 |
+
try ctor-initializerₒₚₜ compound-statement handler-seq
|
| 18 |
```
|
| 19 |
|
| 20 |
``` bnf
|
| 21 |
handler-seq:
|
| 22 |
handler handler-seqₒₚₜ
|
| 23 |
```
|
| 24 |
|
| 25 |
``` bnf
|
| 26 |
handler:
|
| 27 |
+
catch '(' exception-declaration ')' compound-statement
|
| 28 |
```
|
| 29 |
|
| 30 |
``` bnf
|
| 31 |
exception-declaration:
|
| 32 |
attribute-specifier-seqₒₚₜ type-specifier-seq declarator
|
|
|
|
| 40 |
A *try-block* is a *statement* [[stmt.pre]].
|
| 41 |
|
| 42 |
[*Note 1*: Within this Clause “try block” is taken to mean both
|
| 43 |
*try-block* and *function-try-block*. — *end note*]
|
| 44 |
|
| 45 |
+
The *compound-statement* of a try block or of a handler is a
|
| 46 |
+
control-flow-limited statement [[stmt.label]].
|
| 47 |
|
| 48 |
[*Example 1*:
|
| 49 |
|
| 50 |
``` cpp
|
| 51 |
void f() {
|