[INFO] cloning repository https://github.com/kennoath/fwd-terrain
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kennoath/fwd-terrain" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkennoath%2Ffwd-terrain", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkennoath%2Ffwd-terrain'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 835de8aa98126f3fbabc211827e77954672a1c73
[INFO] checking kennoath/fwd-terrain against try#79452e8441468c5568c20bfca2aa1fe75b645b2d for pr-152210
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkennoath%2Ffwd-terrain" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kennoath/fwd-terrain
[INFO] finished tweaking git repo https://github.com/kennoath/fwd-terrain
[INFO] tweaked toml for git repo https://github.com/kennoath/fwd-terrain written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kennoath/fwd-terrain on toolchain 79452e8441468c5568c20bfca2aa1fe75b645b2d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kennoath/fwd-terrain already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 525dfc57efcd9d45c7f0011eea9c2cbcd3e7ea8ef414a7457b1ea4cac91c8dc9
[INFO] running `Command { std: "docker" "start" "-a" "525dfc57efcd9d45c7f0011eea9c2cbcd3e7ea8ef414a7457b1ea4cac91c8dc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "525dfc57efcd9d45c7f0011eea9c2cbcd3e7ea8ef414a7457b1ea4cac91c8dc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "525dfc57efcd9d45c7f0011eea9c2cbcd3e7ea8ef414a7457b1ea4cac91c8dc9", kill_on_drop: false }`
[INFO] [stdout] 525dfc57efcd9d45c7f0011eea9c2cbcd3e7ea8ef414a7457b1ea4cac91c8dc9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+79452e8441468c5568c20bfca2aa1fe75b645b2d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5d3eb936aaba8e63283ab8a858ed9b89d4ff84e4bcec95d6485c260faf45a12e
[INFO] running `Command { std: "docker" "start" "-a" "5d3eb936aaba8e63283ab8a858ed9b89d4ff84e4bcec95d6485c260faf45a12e", kill_on_drop: false }`
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking fdeflate v0.3.0
[INFO] [stderr]     Checking flate2 v1.0.27
[INFO] [stderr]     Checking png v0.17.10
[INFO] [stderr]     Checking fwd-terrain v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/heightmap.rs:15:47
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn mantle_temp(&mut self, p: Vec2) -> f32 {
[INFO] [stdout]    |            -----------                        ^^^ expected `f32`, found `()`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/heightmap.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let nh = nx.iter().zip(ny.iter()).map(|(x, y)| self.height.get_px(*x, *y)).collect();
[INFO] [stdout]    |             ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |             if nh[i] < h {
[INFO] [stdout]    |                -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `nh` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let nh: Vec<_> = nx.iter().zip(ny.iter()).map(|(x, y)| self.height.get_px(*x, *y)).collect();
[INFO] [stdout]    |               ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/heightmap.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |       pub fn shunt_material(&mut self, x: isize, y: isize, crit: f32) -> bool {
[INFO] [stdout]    |                                                                          ---- expected `bool` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 52 | /         for i in 0..8 {
[INFO] [stdout] 53 | |             if nh[i] < h {
[INFO] [stdout] 54 | |                 lower[i] = true;
[INFO] [stdout] 55 | |                 lower_count += 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 58 | |         }
[INFO] [stdout]    | |_________^ expected `bool`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `for` loops evaluate to unit type `()`
[INFO] [stdout] help: consider returning a value here
[INFO] [stdout]    |
[INFO] [stdout] 58 ~         }
[INFO] [stdout] 59 +         /* `bool` value */
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/grayscale.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 |         Self { w, data }
[INFO] [stdout]    |                ^ expected `isize`, found `usize`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert a `usize` to an `isize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 40 |         Self { w: w.try_into().unwrap(), data }
[INFO] [stdout]    |                ++  ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/heightmap.rs:15:47
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn mantle_temp(&mut self, p: Vec2) -> f32 {
[INFO] [stdout]    |            -----------                        ^^^ expected `f32`, found `()`
[INFO] [stdout]    |            |
[INFO] [stdout]    |            implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/heightmap.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let nh = nx.iter().zip(ny.iter()).map(|(x, y)| self.height.get_px(*x, *y)).collect();
[INFO] [stdout]    |             ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |             if nh[i] < h {
[INFO] [stdout]    |                -- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `nh` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let nh: Vec<_> = nx.iter().zip(ny.iter()).map(|(x, y)| self.height.get_px(*x, *y)).collect();
[INFO] [stdout]    |               ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/heightmap.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |       pub fn shunt_material(&mut self, x: isize, y: isize, crit: f32) -> bool {
[INFO] [stdout]    |                                                                          ---- expected `bool` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 52 | /         for i in 0..8 {
[INFO] [stdout] 53 | |             if nh[i] < h {
[INFO] [stdout] 54 | |                 lower[i] = true;
[INFO] [stdout] 55 | |                 lower_count += 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 58 | |         }
[INFO] [stdout]    | |_________^ expected `bool`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `for` loops evaluate to unit type `()`
[INFO] [stdout] help: consider returning a value here
[INFO] [stdout]    |
[INFO] [stdout] 58 ~         }
[INFO] [stdout] 59 +         /* `bool` value */
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `h` in initializer of `grayscale::Grayscale`
[INFO] [stdout]   --> src/grayscale.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         Self { w, data }
[INFO] [stdout]    |         ^^^^ missing `h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/grayscale.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 |         Self { w, data }
[INFO] [stdout]    |                ^ expected `isize`, found `usize`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert a `usize` to an `isize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 40 |         Self { w: w.try_into().unwrap(), data }
[INFO] [stdout]    |                ++  ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `h` in initializer of `grayscale::Grayscale`
[INFO] [stdout]   --> src/grayscale.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         Self { w, data }
[INFO] [stdout]    |         ^^^^ missing `h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/heightmap.rs:25:41
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn critical_gradient(&mut self, p: Vec2) -> f32 {
[INFO] [stdout]    |                                         ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/heightmap.rs:25:41
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn critical_gradient(&mut self, p: Vec2) -> f32 {
[INFO] [stdout]    |                                         ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/heightmap.rs:82:31
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn volcano(&mut self, p: Vec2, h: Vec2) {
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/heightmap.rs:82:31
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn volcano(&mut self, p: Vec2, h: Vec2) {
[INFO] [stdout]    |                               ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]   --> src/heightmap.rs:82:40
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn volcano(&mut self, p: Vec2, h: Vec2) {
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/heightmap.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn volcano_crater(&mut self, p: Vec2, r: Vec2) {
[INFO] [stdout]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> src/heightmap.rs:85:47
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn volcano_crater(&mut self, p: Vec2, r: Vec2) {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]   --> src/heightmap.rs:88:33
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub fn rain_drop(&mut self, pos: Vec2) {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]   --> src/heightmap.rs:91:34
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn rain_storm(&mut self, start: Vec2, end: Vec2) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/heightmap.rs:91:47
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn rain_storm(&mut self, start: Vec2, end: Vec2) {
[INFO] [stdout]    |                                               ^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other`
[INFO] [stdout]   --> src/grayscale.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn wrapping_blit(&mut self, other: Grayscale, x: usize, y: usize) {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/grayscale.rs:50:55
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn wrapping_blit(&mut self, other: Grayscale, x: usize, y: usize) {
[INFO] [stdout]    |                                                       ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/grayscale.rs:50:65
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn wrapping_blit(&mut self, other: Grayscale, x: usize, y: usize) {
[INFO] [stdout]    |                                                                 ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other`
[INFO] [stdout]   --> src/grayscale.rs:53:41
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn wrapping_convolve(&mut self, other: Grayscale) {
[INFO] [stdout]    |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]   --> src/grayscale.rs:56:42
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn wrapping_translate(&mut self, offset: Vec2) {
[INFO] [stdout]    |                                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]   --> src/heightmap.rs:82:40
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn volcano(&mut self, p: Vec2, h: Vec2) {
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/heightmap.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn volcano_crater(&mut self, p: Vec2, r: Vec2) {
[INFO] [stdout]    |                                      ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> src/heightmap.rs:85:47
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn volcano_crater(&mut self, p: Vec2, r: Vec2) {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]   --> src/heightmap.rs:88:33
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub fn rain_drop(&mut self, pos: Vec2) {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start`
[INFO] [stdout]   --> src/heightmap.rs:91:34
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn rain_storm(&mut self, start: Vec2, end: Vec2) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]   --> src/heightmap.rs:91:47
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn rain_storm(&mut self, start: Vec2, end: Vec2) {
[INFO] [stdout]    |                                               ^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other`
[INFO] [stdout]   --> src/grayscale.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn wrapping_blit(&mut self, other: Grayscale, x: usize, y: usize) {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/grayscale.rs:50:55
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn wrapping_blit(&mut self, other: Grayscale, x: usize, y: usize) {
[INFO] [stdout]    |                                                       ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/grayscale.rs:50:65
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn wrapping_blit(&mut self, other: Grayscale, x: usize, y: usize) {
[INFO] [stdout]    |                                                                 ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `other`
[INFO] [stdout]   --> src/grayscale.rs:53:41
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub fn wrapping_convolve(&mut self, other: Grayscale) {
[INFO] [stdout]    |                                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_other`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]   --> src/grayscale.rs:56:42
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn wrapping_translate(&mut self, offset: Vec2) {
[INFO] [stdout]    |                                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0063, E0282, E0308.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0063, E0282, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0063`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `fwd-terrain` (bin "fwd-terrain") due to 5 previous errors; 13 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `fwd-terrain` (bin "fwd-terrain" test) due to 5 previous errors; 13 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "5d3eb936aaba8e63283ab8a858ed9b89d4ff84e4bcec95d6485c260faf45a12e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d3eb936aaba8e63283ab8a858ed9b89d4ff84e4bcec95d6485c260faf45a12e", kill_on_drop: false }`
[INFO] [stdout] 5d3eb936aaba8e63283ab8a858ed9b89d4ff84e4bcec95d6485c260faf45a12e
