diff options
| author | bors <bors@rust-lang.org> | 2025-10-04 06:19:58 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-10-04 06:19:58 +0000 |
| commit | a0f398e89df9767c93c81cd58d44fdba071258a8 (patch) | |
| tree | 6c65806622032e569ced4c44d25b0441398351f4 /compiler/rustc_parse/src/parser/diagnostics.rs | |
| parent | 7950f244e7ef55b61a83d12f4662be643cd182d6 (diff) | |
| parent | 30442dc496138df6c6f56abe5f276392b78bdfbb (diff) | |
| download | rust-a0f398e89df9767c93c81cd58d44fdba071258a8.tar.gz rust-a0f398e89df9767c93c81cd58d44fdba071258a8.zip | |
Auto merge of #147308 - matthiaskrgr:rollup-ov04tbi, r=matthiaskrgr
Rollup of 5 pull requests Successful merges: - rust-lang/rust#147245 (only replace the intended comma in pattern suggestions) - rust-lang/rust#147269 (Add regression test for 123953) - rust-lang/rust#147277 (Extract common logic for iterating over features) - rust-lang/rust#147292 (Respect `-Z` unstable options in `rustdoc --test`) - rust-lang/rust#147300 (Add xtensa arch to object file creation) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_parse/src/parser/diagnostics.rs')
| -rw-r--r-- | compiler/rustc_parse/src/parser/diagnostics.rs | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/compiler/rustc_parse/src/parser/diagnostics.rs b/compiler/rustc_parse/src/parser/diagnostics.rs index a9fbd0fa33d..8b87e4d9690 100644 --- a/compiler/rustc_parse/src/parser/diagnostics.rs +++ b/compiler/rustc_parse/src/parser/diagnostics.rs @@ -2939,26 +2939,24 @@ impl<'a> Parser<'a> { } let seq_span = lo.to(self.prev_token.span); let mut err = self.dcx().struct_span_err(comma_span, "unexpected `,` in pattern"); - if let Ok(seq_snippet) = self.span_to_snippet(seq_span) { - err.multipart_suggestion( - format!( - "try adding parentheses to match on a tuple{}", - if let CommaRecoveryMode::LikelyTuple = rt { "" } else { "..." }, - ), - vec![ - (seq_span.shrink_to_lo(), "(".to_string()), - (seq_span.shrink_to_hi(), ")".to_string()), - ], + err.multipart_suggestion( + format!( + "try adding parentheses to match on a tuple{}", + if let CommaRecoveryMode::LikelyTuple = rt { "" } else { "..." }, + ), + vec![ + (seq_span.shrink_to_lo(), "(".to_string()), + (seq_span.shrink_to_hi(), ")".to_string()), + ], + Applicability::MachineApplicable, + ); + if let CommaRecoveryMode::EitherTupleOrPipe = rt { + err.span_suggestion( + comma_span, + "...or a vertical bar to match on alternatives", + " |", Applicability::MachineApplicable, ); - if let CommaRecoveryMode::EitherTupleOrPipe = rt { - err.span_suggestion( - seq_span, - "...or a vertical bar to match on multiple alternatives", - seq_snippet.replace(',', " |"), - Applicability::MachineApplicable, - ); - } } Err(err) } |
