]>
Commit | Line | Data |
---|---|---|
f20569fa XL |
1 | #![allow(unused_variables)] |
2 | ||
3 | fn takes_an_immutable_reference(a: &i32) {} | |
4 | fn takes_a_mutable_reference(a: &mut i32) {} | |
5 | ||
6 | struct MyStruct; | |
7 | ||
8 | impl MyStruct { | |
9 | fn takes_an_immutable_reference(&self, a: &i32) {} | |
10 | ||
11 | fn takes_a_mutable_reference(&self, a: &mut i32) {} | |
12 | } | |
13 | ||
14 | #[warn(clippy::unnecessary_mut_passed)] | |
15 | fn main() { | |
16 | // Functions | |
17 | takes_an_immutable_reference(&mut 42); | |
18 | let as_ptr: fn(&i32) = takes_an_immutable_reference; | |
19 | as_ptr(&mut 42); | |
20 | ||
21 | // Methods | |
22 | let my_struct = MyStruct; | |
23 | my_struct.takes_an_immutable_reference(&mut 42); | |
24 | ||
25 | // No error | |
26 | ||
27 | // Functions | |
28 | takes_an_immutable_reference(&42); | |
29 | let as_ptr: fn(&i32) = takes_an_immutable_reference; | |
30 | as_ptr(&42); | |
31 | ||
32 | takes_a_mutable_reference(&mut 42); | |
33 | let as_ptr: fn(&mut i32) = takes_a_mutable_reference; | |
34 | as_ptr(&mut 42); | |
35 | ||
36 | let a = &mut 42; | |
37 | takes_an_immutable_reference(a); | |
38 | ||
39 | // Methods | |
40 | my_struct.takes_an_immutable_reference(&42); | |
41 | my_struct.takes_a_mutable_reference(&mut 42); | |
42 | my_struct.takes_an_immutable_reference(a); | |
43 | } |