diff options
| author | León Orell Valerian Liehr <me@fmease.dev> | 2024-12-05 07:29:54 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-12-05 07:29:54 +0100 |
| commit | bc13c82e6e3ddeec1ca3d72940452ffa865837cd (patch) | |
| tree | 83f154cf721a167074e5efd8a3e0574ead14e96e /compiler/rustc_parse/src/errors.rs | |
| parent | 35ea48d5886bc295ef226d6c0907b88748b1795d (diff) | |
| parent | 05c34cc5ed35dbf32f83e2eaa0ebbda4c4953294 (diff) | |
| download | rust-bc13c82e6e3ddeec1ca3d72940452ffa865837cd.tar.gz rust-bc13c82e6e3ddeec1ca3d72940452ffa865837cd.zip | |
Rollup merge of #122161 - compiler-errors:shorthand-self, r=fmease
Fix suggestion when shorthand `self` has erroneous type Fixes #122086 r? estebank
Diffstat (limited to 'compiler/rustc_parse/src/errors.rs')
| -rw-r--r-- | compiler/rustc_parse/src/errors.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/compiler/rustc_parse/src/errors.rs b/compiler/rustc_parse/src/errors.rs index 2579e4c1f25..14f2dd32e92 100644 --- a/compiler/rustc_parse/src/errors.rs +++ b/compiler/rustc_parse/src/errors.rs @@ -3409,3 +3409,22 @@ pub(crate) struct PolarityAndModifiers { pub polarity: &'static str, pub modifiers_concatenated: String, } + +#[derive(Diagnostic)] +#[diag(parse_incorrect_type_on_self)] +pub(crate) struct IncorrectTypeOnSelf { + #[primary_span] + pub span: Span, + #[subdiagnostic] + pub move_self_modifier: MoveSelfModifier, +} + +#[derive(Subdiagnostic)] +#[multipart_suggestion(parse_suggestion, applicability = "machine-applicable")] +pub(crate) struct MoveSelfModifier { + #[suggestion_part(code = "")] + pub removal_span: Span, + #[suggestion_part(code = "{modifier}")] + pub insertion_span: Span, + pub modifier: String, +} |
