Skip to content

Commit 31f087e

Browse files
committed
Update const eval chapter to latest changes
1 parent 8c31315 commit 31f087e

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

src/const_eval.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,7 @@ to be run.
2727
* [Struct] expressions.
2828
* [Enum variant] expressions.
2929
* [Block expressions], including `unsafe` blocks.
30-
* [let statements] and thus irrefutable [patterns], with the caveat that until `if` and `match`
31-
are implemented, one cannot use both short circuiting operators (`&&` and `||`) and let
32-
statements within the same constant.
30+
* [let statements] and thus irrefutable [patterns], including mutable bindings
3331
* [assignment expressions]
3432
* [compound assignment expressions]
3533
* [expression statements]
@@ -45,6 +43,8 @@ to be run.
4543
* [Cast] expressions, except pointer to address and
4644
function pointer to address casts.
4745
* Calls of [const functions] and const methods.
46+
* [loop], [while] and `while let` expressions.
47+
* [if], [`if let`] and [match] expressions.
4848

4949
## Const context
5050

@@ -81,10 +81,14 @@ A _const context_ is one of the following:
8181
[functions]: items/functions.md
8282
[grouped]: expressions/grouped-expr.md
8383
[interior mutability]: interior-mutability.md
84+
[if]: expressions/if-expr.md#if-expressions
85+
[`if let`]: expressions/if-expr.md#if-let-expressions
8486
[lazy boolean]: expressions/operator-expr.md#lazy-boolean-operators
8587
[let statements]: statements.md#let-statements
8688
[literals]: expressions/literal-expr.md
8789
[logical]: expressions/operator-expr.md#arithmetic-and-logical-binary-operators
90+
[loop]: expressions/loop-expr.md#infinite-loops
91+
[match]: expressions/match-expr.md
8892
[negation]: expressions/operator-expr.md#negation-operators
8993
[overflow]: expressions/operator-expr.md#overflow
9094
[paths]: expressions/path-expr.md
@@ -94,3 +98,5 @@ A _const context_ is one of the following:
9498
[statics]: items/static-items.md
9599
[struct]: expressions/struct-expr.md
96100
[tuple expressions]: expressions/tuple-expr.md
101+
[while]: expressions/loop-expr.md#predicate-loops
102+
[`while let`]: expressions/loop-expr.md#predicate-pattern-loops

0 commit comments

Comments
 (0)