Skip to content

Commit baad6c2

Browse files
committed
return redundant clone in cause of cloned.count
1 parent 8058df6 commit baad6c2

File tree

4 files changed

+6
-3
lines changed

4 files changed

+6
-3
lines changed

clippy_lints/src/methods/iter_overeager_cloned.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ use rustc_lint::LateContext;
77
use rustc_span::sym;
88

99
use super::ITER_OVEREAGER_CLONED;
10+
use crate::redundant_clone::REDUNDANT_CLONE;
1011

1112
/// lint use of `cloned().last()` for `Iterators`
1213
pub(super) fn check<'tcx>(
@@ -23,7 +24,7 @@ pub(super) fn check<'tcx>(
2324
if recv_impls_iterator {
2425
let (lint, msg) = match name {
2526
"count" => (
26-
ITER_OVEREAGER_CLONED,
27+
REDUNDANT_CLONE,
2728
format!(
2829
"called `cloned().{}()` on an `Iterator`. It may be more efficient to call\
2930
`.{}()` instead",

tests/ui/iter_overeager_cloned.fixed

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// run-rustfix
2-
#![warn(clippy::iter_overeager_cloned)]
2+
#![warn(clippy::iter_overeager_cloned, clippy::redundant_clone)]
33

44
fn main() {
55
let vec = vec!["1".to_string(), "2".to_string(), "3".to_string()];

tests/ui/iter_overeager_cloned.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// run-rustfix
2-
#![warn(clippy::iter_overeager_cloned)]
2+
#![warn(clippy::iter_overeager_cloned, clippy::redundant_clone)]
33

44
fn main() {
55
let vec = vec!["1".to_string(), "2".to_string(), "3".to_string()];

tests/ui/iter_overeager_cloned.stderr

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ error: called `cloned().count()` on an `Iterator`. It may be more efficient to c
1717
|
1818
LL | let _: usize = vec.iter().cloned().count();
1919
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `vec.iter().count()`
20+
|
21+
= note: `-D clippy::redundant-clone` implied by `-D warnings`
2022

2123
error: called `cloned().take(...)` on an `Iterator`. It may be more efficient to call`.take(...).cloned()` instead
2224
--> $DIR/iter_overeager_cloned.rs:13:21

0 commit comments

Comments
 (0)