[INFO] updating cached repository twh2898/rs_ant [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/twh2898/rs_ant [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/twh2898/rs_ant" "work/ex/clippy-test-run/sources/stable/gh/twh2898/rs_ant"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/twh2898/rs_ant'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/twh2898/rs_ant" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/twh2898/rs_ant"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/twh2898/rs_ant'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] c2290e3b05979d0a45b755c9e489219d48e17164 [INFO] sha for GitHub repo twh2898/rs_ant: c2290e3b05979d0a45b755c9e489219d48e17164 [INFO] validating manifest of twh2898/rs_ant 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 twh2898/rs_ant 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 twh2898/rs_ant [INFO] finished frobbing twh2898/rs_ant [INFO] frobbed toml for twh2898/rs_ant written to work/ex/clippy-test-run/sources/stable/gh/twh2898/rs_ant/Cargo.toml [INFO] started frobbing twh2898/rs_ant [INFO] finished frobbing twh2898/rs_ant [INFO] frobbed toml for twh2898/rs_ant written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/twh2898/rs_ant/Cargo.toml [INFO] crate twh2898/rs_ant 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 twh2898/rs_ant against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/twh2898/rs_ant:/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] 61688899d56a43a2933c42ae438a64a2fd23817e5f4c5bf6dc4872c3ae3346e8 [INFO] running `"docker" "start" "-a" "61688899d56a43a2933c42ae438a64a2fd23817e5f4c5bf6dc4872c3ae3346e8"` [INFO] [stderr] Compiling libc v0.2.24 [INFO] [stderr] Compiling num-traits v0.1.39 [INFO] [stderr] Compiling dtoa v0.4.1 [INFO] [stderr] Compiling itoa v0.3.1 [INFO] [stderr] Compiling bitflags v0.7.0 [INFO] [stderr] Compiling khronos_api v1.0.1 [INFO] [stderr] Checking smallvec v0.1.8 [INFO] [stderr] Checking shared_library v0.1.5 [INFO] [stderr] Compiling x11-dl v2.14.0 [INFO] [stderr] Compiling tempfile v2.1.5 [INFO] [stderr] Compiling xml-rs v0.3.6 [INFO] [stderr] Checking fs2 v0.2.5 [INFO] [stderr] Checking backtrace v0.2.3 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking memmap v0.4.0 [INFO] [stderr] Compiling rand v0.3.15 [INFO] [stderr] Compiling serde_json v0.9.10 [INFO] [stderr] Compiling wayland-scanner v0.7.8 [INFO] [stderr] Compiling gl_generator v0.5.3 [INFO] [stderr] Compiling phf_generator v0.7.21 [INFO] [stderr] Compiling phf_codegen v0.7.21 [INFO] [stderr] Compiling target_build_utils v0.3.1 [INFO] [stderr] Compiling glutin v0.7.4 [INFO] [stderr] Compiling glium v0.16.0 [INFO] [stderr] Compiling wayland-client v0.7.8 [INFO] [stderr] Compiling libloading v0.3.4 [INFO] [stderr] Checking dlib v0.3.1 [INFO] [stderr] Checking wayland-sys v0.7.8 [INFO] [stderr] Checking wayland-kbd v0.6.3 [INFO] [stderr] Checking wayland-window v0.4.4 [INFO] [stderr] Checking winit v0.5.11 [INFO] [stderr] Checking rs_ant v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/support/vertex.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/world.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | write!(f, "\n").unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_with_newline)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/world.rs:147:9 [INFO] [stderr] | [INFO] [stderr] 147 | write!(f, "\n") [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tile.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/support/vertex.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/world.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | write!(f, "\n").unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_with_newline)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/world.rs:147:9 [INFO] [stderr] | [INFO] [stderr] 147 | write!(f, "\n") [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tile.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/support/shaders.rs:11:31 [INFO] [stderr] | [INFO] [stderr] 11 | pub const VERTEX_SHADER_SRC: &'static str = r#" [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/support/shaders.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | pub const FRAGMENT_SHADER_SRC: &'static str = r#" [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/support/mod.rs:35:64 [INFO] [stderr] | [INFO] [stderr] 35 | elapsed.as_secs() as f32 + elapsed.subsec_nanos() as f32 / 1000000000.0 [INFO] [stderr] | ^^^^^^^^^^^^ help: consider: `1_000_000_000.0` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/world.rs:93:16 [INFO] [stderr] | [INFO] [stderr] 93 | } else if self.ant.0 == self.width - 1 { [INFO] [stderr] | ________________^ [INFO] [stderr] 94 | | if self.direction == 1 { [INFO] [stderr] 95 | | self.direction = 3; [INFO] [stderr] 96 | | } [INFO] [stderr] 97 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 93 | } else if self.ant.0 == self.width - 1 && self.direction == 1 { [INFO] [stderr] 94 | self.direction = 3; [INFO] [stderr] 95 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/world.rs:103:16 [INFO] [stderr] | [INFO] [stderr] 103 | } else if self.ant.1 == self.height - 1 { [INFO] [stderr] | ________________^ [INFO] [stderr] 104 | | if self.direction == 2 { [INFO] [stderr] 105 | | self.direction = 0; [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 103 | } else if self.ant.1 == self.height - 1 && self.direction == 2 { [INFO] [stderr] 104 | self.direction = 0; [INFO] [stderr] 105 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/support/shaders.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / pub fn load_program<'a, D>(display: &'a D) -> Result [INFO] [stderr] 5 | | where [INFO] [stderr] 6 | | D: glium::backend::Facade, [INFO] [stderr] 7 | | { [INFO] [stderr] 8 | | glium::Program::from_source(display, VERTEX_SHADER_SRC, FRAGMENT_SHADER_SRC, None) [INFO] [stderr] 9 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the variable `i` is used as a loop counter. Consider using `for (i, item) in self.elements.iter().enumerate()` or similar iterators [INFO] [stderr] --> src/world.rs:125:20 [INFO] [stderr] | [INFO] [stderr] 125 | for row in self.elements.iter() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_counter_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/world.rs:136:21 [INFO] [stderr] | [INFO] [stderr] 136 | / match *col { [INFO] [stderr] 137 | | true => write!(f, "█").unwrap(), [INFO] [stderr] 138 | | false => write!(f, "░").unwrap(), [INFO] [stderr] 139 | | } [INFO] [stderr] | |_____________________^ help: consider using an if/else expression: `if *col { write!(f, "█").unwrap() } else { write!(f, "░").unwrap() }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:59:43 [INFO] [stderr] | [INFO] [stderr] 59 | let v1 = Vertex::from(x, -1., self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:60:42 [INFO] [stderr] | [INFO] [stderr] 60 | let v2 = Vertex::from(x, 1., self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:69:43 [INFO] [stderr] | [INFO] [stderr] 69 | let v1 = Vertex::from(-1., y, self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:70:42 [INFO] [stderr] | [INFO] [stderr] 70 | let v2 = Vertex::from(1., y, self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:77:47 [INFO] [stderr] | [INFO] [stderr] 77 | shape.push(Vertex::from(-1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:78:46 [INFO] [stderr] | [INFO] [stderr] 78 | shape.push(Vertex::from(1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | shape.push(Vertex::from(1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:81:45 [INFO] [stderr] | [INFO] [stderr] 81 | shape.push(Vertex::from(1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:83:45 [INFO] [stderr] | [INFO] [stderr] 83 | shape.push(Vertex::from(1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:84:46 [INFO] [stderr] | [INFO] [stderr] 84 | shape.push(Vertex::from(-1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:86:46 [INFO] [stderr] | [INFO] [stderr] 86 | shape.push(Vertex::from(-1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:87:47 [INFO] [stderr] | [INFO] [stderr] 87 | shape.push(Vertex::from(-1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/world_draw.rs:26:21 [INFO] [stderr] | [INFO] [stderr] 26 | / match element { [INFO] [stderr] 27 | | true => [0.2, 0.2, 0.2], [INFO] [stderr] 28 | | false => [1.0, 1.0, 1.0], [INFO] [stderr] 29 | | } [INFO] [stderr] | |_____________________^ help: consider using an if/else expression: `if element { [0.2, 0.2, 0.2] } else { [1.0, 1.0, 1.0] }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/support/shaders.rs:11:31 [INFO] [stderr] | [INFO] [stderr] 11 | pub const VERTEX_SHADER_SRC: &'static str = r#" [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/support/shaders.rs:25:33 [INFO] [stderr] | [INFO] [stderr] 25 | pub const FRAGMENT_SHADER_SRC: &'static str = r#" [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/support/mod.rs:35:64 [INFO] [stderr] | [INFO] [stderr] 35 | elapsed.as_secs() as f32 + elapsed.subsec_nanos() as f32 / 1000000000.0 [INFO] [stderr] | ^^^^^^^^^^^^ help: consider: `1_000_000_000.0` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/world.rs:93:16 [INFO] [stderr] | [INFO] [stderr] 93 | } else if self.ant.0 == self.width - 1 { [INFO] [stderr] | ________________^ [INFO] [stderr] 94 | | if self.direction == 1 { [INFO] [stderr] 95 | | self.direction = 3; [INFO] [stderr] 96 | | } [INFO] [stderr] 97 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 93 | } else if self.ant.0 == self.width - 1 && self.direction == 1 { [INFO] [stderr] 94 | self.direction = 3; [INFO] [stderr] 95 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/world.rs:103:16 [INFO] [stderr] | [INFO] [stderr] 103 | } else if self.ant.1 == self.height - 1 { [INFO] [stderr] | ________________^ [INFO] [stderr] 104 | | if self.direction == 2 { [INFO] [stderr] 105 | | self.direction = 0; [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 103 | } else if self.ant.1 == self.height - 1 && self.direction == 2 { [INFO] [stderr] 104 | self.direction = 0; [INFO] [stderr] 105 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/support/shaders.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | / pub fn load_program<'a, D>(display: &'a D) -> Result [INFO] [stderr] 5 | | where [INFO] [stderr] 6 | | D: glium::backend::Facade, [INFO] [stderr] 7 | | { [INFO] [stderr] 8 | | glium::Program::from_source(display, VERTEX_SHADER_SRC, FRAGMENT_SHADER_SRC, None) [INFO] [stderr] 9 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: the variable `i` is used as a loop counter. Consider using `for (i, item) in self.elements.iter().enumerate()` or similar iterators [INFO] [stderr] --> src/world.rs:125:20 [INFO] [stderr] | [INFO] [stderr] 125 | for row in self.elements.iter() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_counter_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/world.rs:136:21 [INFO] [stderr] | [INFO] [stderr] 136 | / match *col { [INFO] [stderr] 137 | | true => write!(f, "█").unwrap(), [INFO] [stderr] 138 | | false => write!(f, "░").unwrap(), [INFO] [stderr] 139 | | } [INFO] [stderr] | |_____________________^ help: consider using an if/else expression: `if *col { write!(f, "█").unwrap() } else { write!(f, "░").unwrap() }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:59:43 [INFO] [stderr] | [INFO] [stderr] 59 | let v1 = Vertex::from(x, -1., self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:60:42 [INFO] [stderr] | [INFO] [stderr] 60 | let v2 = Vertex::from(x, 1., self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:69:43 [INFO] [stderr] | [INFO] [stderr] 69 | let v1 = Vertex::from(-1., y, self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:70:42 [INFO] [stderr] | [INFO] [stderr] 70 | let v2 = Vertex::from(1., y, self.color.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:77:47 [INFO] [stderr] | [INFO] [stderr] 77 | shape.push(Vertex::from(-1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:78:46 [INFO] [stderr] | [INFO] [stderr] 78 | shape.push(Vertex::from(1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:80:46 [INFO] [stderr] | [INFO] [stderr] 80 | shape.push(Vertex::from(1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:81:45 [INFO] [stderr] | [INFO] [stderr] 81 | shape.push(Vertex::from(1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:83:45 [INFO] [stderr] | [INFO] [stderr] 83 | shape.push(Vertex::from(1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:84:46 [INFO] [stderr] | [INFO] [stderr] 84 | shape.push(Vertex::from(-1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:86:46 [INFO] [stderr] | [INFO] [stderr] 86 | shape.push(Vertex::from(-1., 1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/grid.rs:87:47 [INFO] [stderr] | [INFO] [stderr] 87 | shape.push(Vertex::from(-1., -1., self.color.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/world_draw.rs:26:21 [INFO] [stderr] | [INFO] [stderr] 26 | / match element { [INFO] [stderr] 27 | | true => [0.2, 0.2, 0.2], [INFO] [stderr] 28 | | false => [1.0, 1.0, 1.0], [INFO] [stderr] 29 | | } [INFO] [stderr] | |_____________________^ help: consider using an if/else expression: `if element { [0.2, 0.2, 0.2] } else { [1.0, 1.0, 1.0] }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 03s [INFO] running `"docker" "inspect" "61688899d56a43a2933c42ae438a64a2fd23817e5f4c5bf6dc4872c3ae3346e8"` [INFO] running `"docker" "rm" "-f" "61688899d56a43a2933c42ae438a64a2fd23817e5f4c5bf6dc4872c3ae3346e8"` [INFO] [stdout] 61688899d56a43a2933c42ae438a64a2fd23817e5f4c5bf6dc4872c3ae3346e8