diff options
| author | Ulyssa <git@ulyssa.dev> | 2021-09-15 08:58:23 -0700 |
|---|---|---|
| committer | Caleb Cartwright <calebcartwright@users.noreply.github.com> | 2021-09-20 20:05:52 -0500 |
| commit | dd445aba080cd337300644c77137fedcad482623 (patch) | |
| tree | 08baa4c48904f177716c6a7be9b898c5dc5d3c40 | |
| parent | 7aa69e5bc87f32fdcbf037abce2d575335480b9a (diff) | |
| download | rust-dd445aba080cd337300644c77137fedcad482623.tar.gz rust-dd445aba080cd337300644c77137fedcad482623.zip | |
Trailing comma on match block goes missing when guard is on its own line
| -rw-r--r-- | src/matches.rs | 1 | ||||
| -rw-r--r-- | tests/source/match-block-trailing-comma.rs | 8 | ||||
| -rw-r--r-- | tests/target/match-block-trailing-comma.rs | 10 |
3 files changed, 19 insertions, 0 deletions
diff --git a/src/matches.rs b/src/matches.rs index 140ec226c02..5a6ed0ec06e 100644 --- a/src/matches.rs +++ b/src/matches.rs @@ -409,6 +409,7 @@ fn rewrite_match_body( } result.push_str(&nested_indent_str); result.push_str(&body_str); + result.push_str(&comma); return Some(result); } diff --git a/tests/source/match-block-trailing-comma.rs b/tests/source/match-block-trailing-comma.rs index e9daac13bf9..baa05b79c16 100644 --- a/tests/source/match-block-trailing-comma.rs +++ b/tests/source/match-block-trailing-comma.rs @@ -8,6 +8,14 @@ fn foo() { "line1"; "line2" } + ThisIsA::Guard if true => { + "line1"; + "line2" + } + ThisIsA::ReallyLongPattern(ThatWillForce::TheGuard, ToWrapOnto::TheFollowingLine) if true => { + "line1"; + "line2" + } b => (aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb), } diff --git a/tests/target/match-block-trailing-comma.rs b/tests/target/match-block-trailing-comma.rs index 44d1f289f8e..5ab433a2e6c 100644 --- a/tests/target/match-block-trailing-comma.rs +++ b/tests/target/match-block-trailing-comma.rs @@ -8,6 +8,16 @@ fn foo() { "line1"; "line2" }, + ThisIsA::Guard if true => { + "line1"; + "line2" + }, + ThisIsA::ReallyLongPattern(ThatWillForce::TheGuard, ToWrapOnto::TheFollowingLine) + if true => + { + "line1"; + "line2" + }, b => ( aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, |
