[INFO] updating cached repository umurgdk/linuxgraphics [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/umurgdk/linuxgraphics [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/umurgdk/linuxgraphics" "work/ex/clippy-test-run/sources/stable/gh/umurgdk/linuxgraphics"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/umurgdk/linuxgraphics'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/umurgdk/linuxgraphics" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/umurgdk/linuxgraphics"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/umurgdk/linuxgraphics'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] d6deed1753820f2e9c3dcbf71fb557a0b5b5d1b0 [INFO] sha for GitHub repo umurgdk/linuxgraphics: d6deed1753820f2e9c3dcbf71fb557a0b5b5d1b0 [INFO] validating manifest of umurgdk/linuxgraphics on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of umurgdk/linuxgraphics on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing umurgdk/linuxgraphics [INFO] finished frobbing umurgdk/linuxgraphics [INFO] frobbed toml for umurgdk/linuxgraphics written to work/ex/clippy-test-run/sources/stable/gh/umurgdk/linuxgraphics/Cargo.toml [INFO] started frobbing umurgdk/linuxgraphics [INFO] finished frobbing umurgdk/linuxgraphics [INFO] frobbed toml for umurgdk/linuxgraphics written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/umurgdk/linuxgraphics/Cargo.toml [INFO] crate umurgdk/linuxgraphics has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting umurgdk/linuxgraphics against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/umurgdk/linuxgraphics:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 870ceba1c404c690c91d46f8502eb9fe96f039f7debf046bc78d9b61be21870c [INFO] running `"docker" "start" "-a" "870ceba1c404c690c91d46f8502eb9fe96f039f7debf046bc78d9b61be21870c"` [INFO] [stderr] Compiling drm-sys v0.0.9 [INFO] [stderr] Compiling gbm-sys v0.1.0 [INFO] [stderr] Compiling input-sys v1.9.0 [INFO] [stderr] Checking error-chain v0.11.0 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Compiling libdbus-sys v0.1.3 [INFO] [stderr] Checking khronos v0.1.2 [INFO] [stderr] Checking nix v0.9.0 [INFO] [stderr] Checking nix v0.8.1 [INFO] [stderr] Checking gbm-rs v0.2.0 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Checking egl v0.2.7 [INFO] [stderr] Compiling wayland-server v0.12.5 [INFO] [stderr] Compiling derive_more v0.7.1 [INFO] [stderr] Compiling gl v0.10.0 [INFO] [stderr] Checking dlib v0.4.1 [INFO] [stderr] Compiling gl_generator v0.6.1 [INFO] [stderr] Checking wayland-sys v0.12.5 [INFO] [stderr] Checking dbus v0.6.2 [INFO] [stderr] Checking udev v0.2.0 [INFO] [stderr] Checking input v0.4.0 [INFO] [stderr] Compiling gl v0.6.5 [INFO] [stderr] Checking drm v0.3.3 [INFO] [stderr] Checking gbm v0.4.0 [INFO] [stderr] Checking cognitive-graphics v0.1.0 [INFO] [stderr] Checking phoenix v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `input::Event` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use input::Event; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `input::event::KeyboardEvent` [INFO] [stderr] --> src/main.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use input::event::KeyboardEvent; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/main.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 103 | / if let Some(crtc_info) = previous_crtc { [INFO] [stderr] 104 | | gpu.modeset_by_crtc(display.connector, crtc_info); [INFO] [stderr] 105 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `input::Event` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use input::Event; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `input::event::KeyboardEvent` [INFO] [stderr] --> src/main.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use input::event::KeyboardEvent; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/main.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 103 | / if let Some(crtc_info) = previous_crtc { [INFO] [stderr] 104 | | gpu.modeset_by_crtc(display.connector, crtc_info); [INFO] [stderr] 105 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `previous_crtc` [INFO] [stderr] --> src/main.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | let previous_crtc = display.current_crtc(&gpu); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider using `_previous_crtc` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/device.rs:91:36 [INFO] [stderr] | [INFO] [stderr] 91 | let connections = displays.into_iter().map(|d| d.connector).collect::>(); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/device.rs:155:54 [INFO] [stderr] | [INFO] [stderr] 155 | let surface = self.gbm_device.create_surface(width as u32, height as u32, format, gbm::BufferObjectFlags::SCANOUT | gbm::BufferObjectFlags::RENDERING) [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(width)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/device.rs:155:68 [INFO] [stderr] | [INFO] [stderr] 155 | let surface = self.gbm_device.create_surface(width as u32, height as u32, format, gbm::BufferObjectFlags::SCANOUT | gbm::BufferObjectFlags::RENDERING) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: unused variable: `previous_crtc` [INFO] [stderr] --> src/main.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | let previous_crtc = display.current_crtc(&gpu); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider using `_previous_crtc` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/device.rs:170:39 [INFO] [stderr] | [INFO] [stderr] 170 | let gpu_file = options.open(path).expect(&format!("Failed to open {}", path)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed to open {}", path))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::expect_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/display.rs:72:61 [INFO] [stderr] | [INFO] [stderr] 72 | self.framebuffer = Some(Framebuffer{ drm_fb, width: width as u32, height: height as u32 }); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/display.rs:72:83 [INFO] [stderr] | [INFO] [stderr] 72 | self.framebuffer = Some(Framebuffer{ drm_fb, width: width as u32, height: height as u32 }); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/display.rs:83:17 [INFO] [stderr] | [INFO] [stderr] 83 | / match e { [INFO] [stderr] 84 | | crtc::Event::PageFlip(_) => break 'waitloop, [INFO] [stderr] 85 | | _ => {} [INFO] [stderr] 86 | | } [INFO] [stderr] | |_________________^ help: try this: `if let crtc::Event::PageFlip(_) = e { break 'waitloop }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: unused label `'mainloop` [INFO] [stderr] --> src/main.rs:75:1 [INFO] [stderr] | [INFO] [stderr] 75 | / 'mainloop: [INFO] [stderr] 76 | | loop { [INFO] [stderr] 77 | | // for input_e in input_ctx.clone() { [INFO] [stderr] 78 | | // println!("[libinput] got event: {:?}", input_e); [INFO] [stderr] ... | [INFO] [stderr] 96 | | i += 1; [INFO] [stderr] 97 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_label)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_label [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/device.rs:91:36 [INFO] [stderr] | [INFO] [stderr] 91 | let connections = displays.into_iter().map(|d| d.connector).collect::>(); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/device.rs:155:54 [INFO] [stderr] | [INFO] [stderr] 155 | let surface = self.gbm_device.create_surface(width as u32, height as u32, format, gbm::BufferObjectFlags::SCANOUT | gbm::BufferObjectFlags::RENDERING) [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(width)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/device.rs:155:68 [INFO] [stderr] | [INFO] [stderr] 155 | let surface = self.gbm_device.create_surface(width as u32, height as u32, format, gbm::BufferObjectFlags::SCANOUT | gbm::BufferObjectFlags::RENDERING) [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> src/device.rs:170:39 [INFO] [stderr] | [INFO] [stderr] 170 | let gpu_file = options.open(path).expect(&format!("Failed to open {}", path)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| panic!("Failed to open {}", path))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::expect_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/display.rs:72:61 [INFO] [stderr] | [INFO] [stderr] 72 | self.framebuffer = Some(Framebuffer{ drm_fb, width: width as u32, height: height as u32 }); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/display.rs:72:83 [INFO] [stderr] | [INFO] [stderr] 72 | self.framebuffer = Some(Framebuffer{ drm_fb, width: width as u32, height: height as u32 }); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u32::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/display.rs:83:17 [INFO] [stderr] | [INFO] [stderr] 83 | / match e { [INFO] [stderr] 84 | | crtc::Event::PageFlip(_) => break 'waitloop, [INFO] [stderr] 85 | | _ => {} [INFO] [stderr] 86 | | } [INFO] [stderr] | |_________________^ help: try this: `if let crtc::Event::PageFlip(_) = e { break 'waitloop }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: unused label `'mainloop` [INFO] [stderr] --> src/main.rs:75:1 [INFO] [stderr] | [INFO] [stderr] 75 | / 'mainloop: [INFO] [stderr] 76 | | loop { [INFO] [stderr] 77 | | // for input_e in input_ctx.clone() { [INFO] [stderr] 78 | | // println!("[libinput] got event: {:?}", input_e); [INFO] [stderr] ... | [INFO] [stderr] 96 | | i += 1; [INFO] [stderr] 97 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_label)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_label [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 33.49s [INFO] running `"docker" "inspect" "870ceba1c404c690c91d46f8502eb9fe96f039f7debf046bc78d9b61be21870c"` [INFO] running `"docker" "rm" "-f" "870ceba1c404c690c91d46f8502eb9fe96f039f7debf046bc78d9b61be21870c"` [INFO] [stdout] 870ceba1c404c690c91d46f8502eb9fe96f039f7debf046bc78d9b61be21870c