@@ -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