Skip to content

Commit b30c50b

Browse files
authored
[patterns] Fix the grammar for "||" and "&&" patterns. (#2692)
When I "fixed" #2636, I typo-ed the grammar and got it wrong. This makes it what I meant to write.
1 parent b60b46c commit b30c50b

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

accepted/future-releases/0546-patterns/feature-specification.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -214,8 +214,8 @@ Here is the overall grammar for the different kinds of patterns:
214214
```
215215
pattern ::= logicalOrPattern
216216
217-
logicalOrPattern ::= logicalOrPattern ( '||' logicalAndPattern )*
218-
logicalAndPattern ::= logicalAndPattern ( '&&' relationalPattern )*
217+
logicalOrPattern ::= logicalAndPattern ( '||' logicalAndPattern )*
218+
logicalAndPattern ::= relationalPattern ( '&&' relationalPattern )*
219219
relationalPattern ::= ( equalityOperator | relationalOperator) bitwiseOrExpression
220220
| unaryPattern
221221
@@ -243,7 +243,7 @@ The individual patterns are:
243243
### Logical-or pattern
244244

245245
```
246-
logicalOrPattern ::= ( logicalOrPattern '||' )? logicalAndPattern
246+
logicalOrPattern ::= logicalAndPattern ( '||' logicalAndPattern )*
247247
```
248248

249249
A pair of patterns separated by `||` matches if either of the branches match.
@@ -296,7 +296,7 @@ problems stemming from that, the following restrictions apply:
296296
### Logical-and pattern
297297

298298
```
299-
logicalAndPattern ::= ( logicalAndPattern '&&' )? relationalPattern
299+
logicalAndPattern ::= relationalPattern ( '&&' relationalPattern )*
300300
```
301301

302302
A pair of patterns separated by `&&` matches only if *both* subpatterns match.

0 commit comments

Comments
 (0)