From Jason Turner

[expr.unary.noexcept]

Diff to HTML by rtfpessoa

tmp/tmp8ijvy2o7/{from.md → to.md} RENAMED
@@ -1,19 +1,18 @@
1
  #### `noexcept` operator <a id="expr.unary.noexcept">[[expr.unary.noexcept]]</a>
2
 
3
- The `noexcept` operator determines whether the evaluation of its
4
- operand, which is an unevaluated operand [[term.unevaluated.operand]],
5
- can throw an exception [[except.throw]].
6
-
7
  ``` bnf
8
  noexcept-expression:
9
  noexcept '(' expression ')'
10
  ```
11
 
12
- The result of the `noexcept` operator is a prvalue of type `bool`.
 
 
 
 
 
 
13
 
14
  [*Note 1*: A *noexcept-expression* is an integral constant expression
15
  [[expr.const]]. — *end note*]
16
 
17
- The result of the `noexcept` operator is `true` unless the *expression*
18
- is potentially-throwing [[except.spec]].
19
-
 
1
  #### `noexcept` operator <a id="expr.unary.noexcept">[[expr.unary.noexcept]]</a>
2
 
 
 
 
 
3
  ``` bnf
4
  noexcept-expression:
5
  noexcept '(' expression ')'
6
  ```
7
 
8
+ The operand of the `noexcept` operator is an unevaluated operand
9
+ [[term.unevaluated.operand]]. If the operand is a prvalue, the temporary
10
+ materialization conversion [[conv.rval]] is applied.
11
+
12
+ The result of the `noexcept` operator is a prvalue of type `bool`. The
13
+ result is `false` if the full-expression of the operand is
14
+ potentially-throwing [[except.spec]], and `true` otherwise.
15
 
16
  [*Note 1*: A *noexcept-expression* is an integral constant expression
17
  [[expr.const]]. — *end note*]
18