Commit 55b5409
authored
Fix wrong
* Added `&& sugg.starts_with('{')` to the block-insertion branch. When
the snippet doesn't start with `{` (i.e., destructuring assignment), it
falls through to the else branch which correctly wraps the suggestion in
an explicit block.
* Added a new test case `issue_destructuring_assignment` in
`tests/ui/question_mark.rs` to verify that the lint provides correct
suggestion for match expressions with destructuring assignments that can
be replaced by the `?` operator.
fixes #16862
changelog: [`question_mark`]: Fix wrong suggestion when match arm body
is a destructuring assignmentquestion_mark suggestion when match arm body is a destructuring assignment (#16863)4 files changed
Lines changed: 43 additions & 2 deletions
File tree
- clippy_lints/src
- tests/ui
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
495 | 495 | | |
496 | 496 | | |
497 | 497 | | |
498 | | - | |
| 498 | + | |
499 | 499 | | |
500 | 500 | | |
501 | 501 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
564 | 564 | | |
565 | 565 | | |
566 | 566 | | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
710 | 710 | | |
711 | 711 | | |
712 | 712 | | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
498 | 498 | | |
499 | 499 | | |
500 | 500 | | |
501 | | - | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
502 | 520 | | |
0 commit comments