respect #[allow]
attribute in single_call_fn
lint
This commit is contained in:
parent
64d08a8b1d
commit
ad4d90b4a9
@ -1,4 +1,4 @@
|
||||
use clippy_utils::diagnostics::span_lint_and_help;
|
||||
use clippy_utils::diagnostics::span_lint_hir_and_then;
|
||||
use clippy_utils::{is_from_proc_macro, is_in_test_function};
|
||||
use rustc_data_structures::fx::FxHashMap;
|
||||
use rustc_hir::def_id::LocalDefId;
|
||||
@ -88,16 +88,18 @@ impl<'tcx> LateLintPass<'tcx> for SingleCallFn {
|
||||
};
|
||||
cx.tcx.hir().visit_all_item_likes_in_crate(&mut v);
|
||||
|
||||
for usage in self.def_id_to_usage.values() {
|
||||
for (&def_id, usage) in &self.def_id_to_usage {
|
||||
let single_call_fn_span = usage.0;
|
||||
if let [caller_span] = *usage.1 {
|
||||
span_lint_and_help(
|
||||
span_lint_hir_and_then(
|
||||
cx,
|
||||
SINGLE_CALL_FN,
|
||||
cx.tcx.local_def_id_to_hir_id(def_id),
|
||||
single_call_fn_span,
|
||||
"this function is only used once",
|
||||
Some(caller_span),
|
||||
"used here",
|
||||
|diag| {
|
||||
diag.span_help(caller_span, "used here");
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -69,6 +69,17 @@ fn e() {
|
||||
#[test]
|
||||
fn k() {}
|
||||
|
||||
mod issue12182 {
|
||||
#[allow(clippy::single_call_fn)]
|
||||
fn print_foo(text: &str) {
|
||||
println!("{text}");
|
||||
}
|
||||
|
||||
fn use_print_foo() {
|
||||
print_foo("foo");
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn l() {
|
||||
k();
|
||||
|
Loading…
x
Reference in New Issue
Block a user