about summary refs log tree commit diff
path: root/clippy_lints/src/unneeded_struct_pattern.rs
diff options
context:
space:
mode:
authorMatthias Krüger <476013+matthiaskrgr@users.noreply.github.com>2025-03-19 16:52:54 +0100
committerGitHub <noreply@github.com>2025-03-19 16:52:54 +0100
commite85fcabd9f28e7fea60d0f87273d3b9e00029cb6 (patch)
treebc49e93cfa1cb960c664dcb116de53065a10ec42 /clippy_lints/src/unneeded_struct_pattern.rs
parent9932e5e6694d9bd02f49418a765a59467e940d7d (diff)
parent10cf3cb945b413c0fb81cf13c4bf4db762ba5377 (diff)
Rollup merge of #138001 - meithecatte:privately-uninhabited, r=Nadrieril
mir_build: consider privacy when checking for irrefutable patterns

This PR fixes #137999.

Note that, since this makes the compiler reject code that was previously accepted, it will probably need a crater run.

I include a commit that factors out a common code pattern into a helper function, purely because the fact that this was repeated all over the place was bothering me. Let me know if I should split that into a separate PR instead.
Diffstat (limited to 'clippy_lints/src/unneeded_struct_pattern.rs')
-rw-r--r--clippy_lints/src/unneeded_struct_pattern.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/clippy_lints/src/unneeded_struct_pattern.rs b/clippy_lints/src/unneeded_struct_pattern.rs
index a74eab8b6ae..3326dea8c5d 100644
--- a/clippy_lints/src/unneeded_struct_pattern.rs
+++ b/clippy_lints/src/unneeded_struct_pattern.rs
@@ -51,7 +51,7 @@ impl LateLintPass<'_> for UnneededStructPattern {
             let variant = cx.tcx.adt_def(enum_did).variant_with_id(did);
 
             let has_only_fields_brackets = variant.ctor.is_some() && variant.fields.is_empty();
-            let non_exhaustive_activated = !variant.def_id.is_local() && variant.is_field_list_non_exhaustive();
+            let non_exhaustive_activated = variant.field_list_has_applicable_non_exhaustive();
             if !has_only_fields_brackets || non_exhaustive_activated {
                 return;
             }