- Fix invalid match in let-stmt
- Fix multiple statements loses indent
Example
---
```rust
fn main() {
let value = match rel_path {
Ok(rel_path) => {$0
let rel_path = RelativePathBuf::from_path(rel_path).ok()?;
Some((*id, rel_path))
}
Err(_) => None,
};
}
```
**Before this PR**
```rust
fn main() {
let value = let rel_path = RelativePathBuf::from_path(rel_path).ok()?;
let value = Some((*id, rel_path));
}
```
**After this PR**
```rust
fn main() {
let rel_path = RelativePathBuf::from_path(rel_path).ok()?;
let value = Some((*id, rel_path));
}
```
---
```rust
fn main() {
let mut a = {$0
1;
2;
3
};
}
```
**Before this PR**
```rust
fn main() {
1;
2;
let mut a = 3;
}
```
**After this PR**
```rust
fn main() -> i32 {
1;
2;
let mut a = 3;
}
```
|
||
|---|---|---|
| .. | ||
| bootstrap | ||
| build_helper | ||
| ci | ||
| doc | ||
| etc | ||
| gcc@0081ca6631 | ||
| librustdoc | ||
| llvm-project@00d23d10dc | ||
| rustc-std-workspace | ||
| rustdoc-json-types | ||
| tools | ||
| README.md | ||
| stage0 | ||
| version | ||
This directory contains some source code for the Rust project, including:
- The bootstrapping build system
- Various submodules for tools, like cargo, tidy, etc.
For more information on how various parts of the compiler work, see the rustc dev guide.