mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-14 17:07:17 +00:00
38d4ac7cea
Discussion previously happened in https://github.com/rust-lang/rust/pull/43498
96 lines
3 KiB
Text
96 lines
3 KiB
Text
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:17:5
|
|
|
|
|
LL | 42.clone();
|
|
| ^^^^^^^^^^ help: try removing the `clone` call: `42`
|
|
|
|
|
= note: `-D clippy::clone-on-copy` implied by `-D warnings`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:21:5
|
|
|
|
|
LL | (&42).clone();
|
|
| ^^^^^^^^^^^^^ help: try dereferencing it: `*(&42)`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:24:5
|
|
|
|
|
LL | rc.borrow().clone();
|
|
| ^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*rc.borrow()`
|
|
|
|
error: using '.clone()' on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:34:5
|
|
|
|
|
LL | rc.clone();
|
|
| ^^^^^^^^^^ help: try this: `Rc::<bool>::clone(&rc)`
|
|
|
|
|
= note: `-D clippy::clone-on-ref-ptr` implied by `-D warnings`
|
|
|
|
error: using '.clone()' on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:37:5
|
|
|
|
|
LL | arc.clone();
|
|
| ^^^^^^^^^^^ help: try this: `Arc::<bool>::clone(&arc)`
|
|
|
|
error: using '.clone()' on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:40:5
|
|
|
|
|
LL | rcweak.clone();
|
|
| ^^^^^^^^^^^^^^ help: try this: `Weak::<bool>::clone(&rcweak)`
|
|
|
|
error: using '.clone()' on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:43:5
|
|
|
|
|
LL | arc_weak.clone();
|
|
| ^^^^^^^^^^^^^^^^ help: try this: `Weak::<bool>::clone(&arc_weak)`
|
|
|
|
error: using '.clone()' on a ref-counted pointer
|
|
--> $DIR/unnecessary_clone.rs:47:29
|
|
|
|
|
LL | let _: Arc<SomeTrait> = x.clone();
|
|
| ^^^^^^^^^ help: try this: `Arc::<SomeImpl>::clone(&x)`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:51:5
|
|
|
|
|
LL | t.clone();
|
|
| ^^^^^^^^^ help: try removing the `clone` call: `t`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:53:5
|
|
|
|
|
LL | Some(t).clone();
|
|
| ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `Some(t)`
|
|
|
|
error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type
|
|
--> $DIR/unnecessary_clone.rs:59:22
|
|
|
|
|
LL | let z: &Vec<_> = y.clone();
|
|
| ^^^^^^^^^
|
|
|
|
|
= note: #[deny(clippy::clone_double_ref)] on by default
|
|
help: try dereferencing it
|
|
|
|
|
LL | let z: &Vec<_> = &(*y).clone();
|
|
| ^^^^^^^^^^^^^
|
|
help: or try being explicit about what type to clone
|
|
|
|
|
LL | let z: &Vec<_> = &std::vec::Vec<i32>::clone(y);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
error: called `cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable
|
|
--> $DIR/unnecessary_clone.rs:66:26
|
|
|
|
|
LL | let v2: Vec<isize> = v.iter().cloned().collect();
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
= note: `-D clippy::iter-cloned-collect` implied by `-D warnings`
|
|
|
|
error: using `clone` on a `Copy` type
|
|
--> $DIR/unnecessary_clone.rs:102:20
|
|
|
|
|
LL | let _: E = a.clone();
|
|
| ^^^^^^^^^ help: try dereferencing it: `*****a`
|
|
|
|
error: aborting due to 13 previous errors
|
|
|