about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAda Alakbarova <ada.alakbarova@proton.me>2025-08-20 11:04:20 +0200
committerAda Alakbarova <ada.alakbarova@proton.me>2025-08-22 15:03:13 +0200
commitd32796da852940f5e9ba60990dfb662ce00dddf7 (patch)
treed9164ab9fc27454ef81f3255b37e1762e2dea1f9
parente243f89e3ae2257419699daf9dad6bf5b8a255cd (diff)
downloadrust-d32796da852940f5e9ba60990dfb662ce00dddf7.tar.gz
rust-d32796da852940f5e9ba60990dfb662ce00dddf7.zip
non_octal_unix_permissions: `get_diagnostic_name` once
-rw-r--r--clippy_lints/src/non_octal_unix_permissions.rs12
1 files changed, 5 insertions, 7 deletions
diff --git a/clippy_lints/src/non_octal_unix_permissions.rs b/clippy_lints/src/non_octal_unix_permissions.rs
index 23a1622f30f..1aec5412cda 100644
--- a/clippy_lints/src/non_octal_unix_permissions.rs
+++ b/clippy_lints/src/non_octal_unix_permissions.rs
@@ -43,13 +43,11 @@ impl<'tcx> LateLintPass<'tcx> for NonOctalUnixPermissions {
         match &expr.kind {
             ExprKind::MethodCall(path, func, [param], _) => {
                 if let Some(adt) = cx.typeck_results().expr_ty(func).peel_refs().ty_adt_def()
-                    && ((path.ident.name == sym::mode
-                        && matches!(
-                            cx.tcx.get_diagnostic_name(adt.did()),
-                            Some(sym::FsOpenOptions | sym::DirBuilder)
-                        ))
-                        || (path.ident.name == sym::set_mode
-                            && cx.tcx.is_diagnostic_item(sym::FsPermissions, adt.did())))
+                    && matches!(
+                        (path.ident.name, cx.tcx.get_diagnostic_name(adt.did())),
+                        (sym::mode, Some(sym::FsOpenOptions | sym::DirBuilder))
+                            | (sym::set_mode, Some(sym::FsPermissions))
+                    )
                     && let ExprKind::Lit(_) = param.kind
                     && param.span.eq_ctxt(expr.span)
                     && param