about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--clippy_lints/src/lifetimes.rs6
-rw-r--r--tests/ui/needless_lifetimes.fixed14
-rw-r--r--tests/ui/needless_lifetimes.rs14
3 files changed, 28 insertions, 6 deletions
diff --git a/clippy_lints/src/lifetimes.rs b/clippy_lints/src/lifetimes.rs
index 35b14776e59..ee2e1ee32bb 100644
--- a/clippy_lints/src/lifetimes.rs
+++ b/clippy_lints/src/lifetimes.rs
@@ -658,12 +658,6 @@ fn report_elidable_impl_lifetimes<'tcx>(
                     lifetime,
                     in_where_predicate: false,
                     ..
-                }
-                | Usage {
-                    lifetime,
-                    in_bounded_ty: false,
-                    in_generics_arg: false,
-                    ..
                 },
             ] = usages.as_slice()
             {
diff --git a/tests/ui/needless_lifetimes.fixed b/tests/ui/needless_lifetimes.fixed
index cfa4cf9da3c..8196d608abd 100644
--- a/tests/ui/needless_lifetimes.fixed
+++ b/tests/ui/needless_lifetimes.fixed
@@ -562,4 +562,18 @@ mod rayon {
     }
 }
 
+mod issue13749 {
+    pub struct Generic<T>(T);
+    // Non elidable lifetime
+    #[expect(clippy::extra_unused_lifetimes)]
+    impl<'a, T> Generic<T> where T: 'a {}
+}
+
+mod issue13749bis {
+    pub struct Generic<T>(T);
+    // Non elidable lifetime
+    #[expect(clippy::extra_unused_lifetimes)]
+    impl<'a, T: 'a> Generic<T> {}
+}
+
 fn main() {}
diff --git a/tests/ui/needless_lifetimes.rs b/tests/ui/needless_lifetimes.rs
index 5e9d5116426..b55dd99c46d 100644
--- a/tests/ui/needless_lifetimes.rs
+++ b/tests/ui/needless_lifetimes.rs
@@ -562,4 +562,18 @@ mod rayon {
     }
 }
 
+mod issue13749 {
+    pub struct Generic<T>(T);
+    // Non elidable lifetime
+    #[expect(clippy::extra_unused_lifetimes)]
+    impl<'a, T> Generic<T> where T: 'a {}
+}
+
+mod issue13749bis {
+    pub struct Generic<T>(T);
+    // Non elidable lifetime
+    #[expect(clippy::extra_unused_lifetimes)]
+    impl<'a, T: 'a> Generic<T> {}
+}
+
 fn main() {}