From a5b6d25ca4f1600a158ffb68301dd816c8eda3cf Mon Sep 17 00:00:00 2001 From: kyoto7250 <50972773+kyoto7250@users.noreply.github.com> Date: Fri, 17 Jun 2022 10:10:40 +0900 Subject: [PATCH] use get_diagnostic_name for checking macro_call --- clippy_lints/src/copies.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/clippy_lints/src/copies.rs b/clippy_lints/src/copies.rs index a771656c2..9d1ca3588 100644 --- a/clippy_lints/src/copies.rs +++ b/clippy_lints/src/copies.rs @@ -13,11 +13,9 @@ use rustc_lint::{LateContext, LateLintPass}; use rustc_session::{declare_lint_pass, declare_tool_lint}; use rustc_span::hygiene::walk_chain; use rustc_span::source_map::SourceMap; -use rustc_span::{BytePos, Span, Symbol}; +use rustc_span::{sym, BytePos, Span, Symbol}; use std::borrow::Cow; -const ACCEPTABLE_MACRO: [&str; 2] = ["todo", "unimplemented"]; - declare_clippy_lint! { /// ### What it does /// Checks for consecutive `if`s with the same condition. @@ -394,7 +392,10 @@ fn acceptable_macro(cx: &LateContext<'_>, expr: &Expr<'_>) -> bool { if let ExprKind::Call(call_expr, _) = expr.kind && let ExprKind::Path(QPath::Resolved(None, path)) = call_expr.kind && macro_backtrace(path.span).any(|macro_call| { - ACCEPTABLE_MACRO.contains(&cx.tcx.item_name(macro_call.def_id).as_str()) + matches!( + &cx.tcx.get_diagnostic_name(macro_call.def_id), + Some(sym::todo_macro | sym::unimplemented_macro) + ) }) { return true; }