diff options
| author | Xiretza <xiretza@xiretza.xyz> | 2024-04-15 18:07:22 +0000 |
|---|---|---|
| committer | Xiretza <xiretza@xiretza.xyz> | 2024-05-21 20:16:39 +0000 |
| commit | 8004e6a3796f832eb7752dcd22252b8e6d04e240 (patch) | |
| tree | 832d257e8cc1c468cd95d084ae7000f5af3e1e66 /compiler/rustc_resolve/src/check_unused.rs | |
| parent | b7abf014ec85e362c10bd7dc222a1a71968bc427 (diff) | |
| download | rust-8004e6a3796f832eb7752dcd22252b8e6d04e240.tar.gz rust-8004e6a3796f832eb7752dcd22252b8e6d04e240.zip | |
Make early lints translatable
Diffstat (limited to 'compiler/rustc_resolve/src/check_unused.rs')
| -rw-r--r-- | compiler/rustc_resolve/src/check_unused.rs | 34 |
1 files changed, 11 insertions, 23 deletions
diff --git a/compiler/rustc_resolve/src/check_unused.rs b/compiler/rustc_resolve/src/check_unused.rs index 55b2d91260e..93b53f510fc 100644 --- a/compiler/rustc_resolve/src/check_unused.rs +++ b/compiler/rustc_resolve/src/check_unused.rs @@ -433,20 +433,12 @@ impl Resolver<'_, '_> { visitor.report_unused_extern_crate_items(maybe_unused_extern_crates); for unused in visitor.unused_imports.values() { - let mut fixes = Vec::new(); - let spans = match calc_unused_spans(unused, &unused.use_tree, unused.use_tree_id) { - UnusedSpanResult::Used => continue, - UnusedSpanResult::Unused { spans, remove } => { - fixes.push((remove, String::new())); - spans - } - UnusedSpanResult::PartialUnused { spans, remove } => { - for fix in &remove { - fixes.push((*fix, String::new())); - } - spans - } - }; + let (spans, remove_spans) = + match calc_unused_spans(unused, &unused.use_tree, unused.use_tree_id) { + UnusedSpanResult::Used => continue, + UnusedSpanResult::Unused { spans, remove } => (spans, vec![remove]), + UnusedSpanResult::PartialUnused { spans, remove } => (spans, remove), + }; let ms = MultiSpan::from_spans(spans); @@ -458,13 +450,8 @@ impl Resolver<'_, '_> { .collect::<Vec<String>>(); span_snippets.sort(); - let fix_msg = if fixes.len() == 1 && fixes[0].0 == unused.item_span { - "remove the whole `use` item" - } else if ms.primary_spans().len() > 1 { - "remove the unused imports" - } else { - "remove the unused import" - }; + let remove_whole_use = remove_spans.len() == 1 && remove_spans[0] == unused.item_span; + let num_to_remove = ms.primary_spans().len(); // If we are in the `--test` mode, suppress a help that adds the `#[cfg(test)]` // attribute; however, if not, suggest adding the attribute. There is no way to @@ -495,8 +482,9 @@ impl Resolver<'_, '_> { unused.use_tree_id, ms, BuiltinLintDiag::UnusedImports { - fix_msg: fix_msg.into(), - fixes, + remove_whole_use, + num_to_remove, + remove_spans, test_module_span, span_snippets, }, |
