Open
Description
At some point, we may want to improve the grammar for blocks.
The way that rustc
works is that a block is a sequence of statements. It's probably clearer to do something like that here. Then we can just say that "all expressions are statements" and that "a block is a sequence of statements that are delimited by semicolons with an optional trailing semicolon" or something to that effect.
But, of course, we should beware of:
- What is a trailing expression in a block exactly? rust#61733
- Document that expressions in non-trailing expression statements without semicolon must have type
()
#625
cc @ehuss