]> git.proxmox.com Git - rustc.git/blame - src/tools/clippy/tests/ui/mut_mut.rs
New upstream version 1.52.1+dfsg1
[rustc.git] / src / tools / clippy / tests / ui / mut_mut.rs
CommitLineData
f20569fa
XL
1#![allow(unused, clippy::no_effect, clippy::unnecessary_operation)]
2#![warn(clippy::mut_mut)]
3
4fn fun(x: &mut &mut u32) -> bool {
5 **x > 0
6}
7
8fn less_fun(x: *mut *mut u32) {
9 let y = x;
10}
11
12macro_rules! mut_ptr {
13 ($p:expr) => {
14 &mut $p
15 };
16}
17
18#[allow(unused_mut, unused_variables)]
19fn main() {
20 let mut x = &mut &mut 1u32;
21 {
22 let mut y = &mut x;
23 }
24
25 if fun(x) {
26 let y: &mut &mut u32 = &mut &mut 2;
27 **y + **x;
28 }
29
30 if fun(x) {
31 let y: &mut &mut &mut u32 = &mut &mut &mut 2;
32 ***y + **x;
33 }
34
35 let mut z = mut_ptr!(&mut 3u32);
36}
37
38fn issue939() {
39 let array = [5, 6, 7, 8, 9];
40 let mut args = array.iter().skip(2);
41 for &arg in &mut args {
42 println!("{}", arg);
43 }
44
45 let args = &mut args;
46 for arg in args {
47 println!(":{}", arg);
48 }
49}