[INFO] cloning repository https://github.com/davidneumann/rust-glyph-recog
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davidneumann/rust-glyph-recog" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidneumann%2Frust-glyph-recog", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidneumann%2Frust-glyph-recog'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] deb8adf86c26494330af38b4e02a11d7495ed88b
[INFO] documenting davidneumann/rust-glyph-recog against beta-2023-04-20 for beta-1.70-rustdoc-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidneumann%2Frust-glyph-recog" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/davidneumann/rust-glyph-recog on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/davidneumann/rust-glyph-recog
[INFO] finished tweaking git repo https://github.com/davidneumann/rust-glyph-recog
[INFO] tweaked toml for git repo https://github.com/davidneumann/rust-glyph-recog written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/davidneumann/rust-glyph-recog 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" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded trees v0.4.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c02d6be1e28942c51dc2bbbec3207cc0d1f58f9caed4165b6f564a9f294873af
[INFO] running `Command { std: "docker" "start" "-a" "c02d6be1e28942c51dc2bbbec3207cc0d1f58f9caed4165b6f564a9f294873af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c02d6be1e28942c51dc2bbbec3207cc0d1f58f9caed4165b6f564a9f294873af", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c02d6be1e28942c51dc2bbbec3207cc0d1f58f9caed4165b6f564a9f294873af", kill_on_drop: false }`
[INFO] [stdout] c02d6be1e28942c51dc2bbbec3207cc0d1f58f9caed4165b6f564a9f294873af
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 89c854c7433824469553e0aefef93e7421cce0e5a4f0e7d9cc92dfbbda460581
[INFO] running `Command { std: "docker" "start" "-a" "89c854c7433824469553e0aefef93e7421cce0e5a4f0e7d9cc92dfbbda460581", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling libc v0.2.94
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.10
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking trees v0.4.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.4
[INFO] [stderr]    Compiling memoffset v0.6.3
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking rand_core v0.6.2
[INFO] [stderr]     Checking rand_chacha v0.3.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.4
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]     Checking rand v0.8.3
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]  Documenting rust-glyph-recog v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:144:25
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 ray.l2r[(y as usize)] = cmp::min(x, ray.l2r[(y as usize)]);
[INFO] [stdout]     |                         ^          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 144 -                 ray.l2r[(y as usize)] = cmp::min(x, ray.l2r[(y as usize)]);
[INFO] [stdout] 144 +                 ray.l2r[y as usize] = cmp::min(x, ray.l2r[(y as usize)]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:144:61
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 ray.l2r[(y as usize)] = cmp::min(x, ray.l2r[(y as usize)]);
[INFO] [stdout]     |                                                             ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 144 -                 ray.l2r[(y as usize)] = cmp::min(x, ray.l2r[(y as usize)]);
[INFO] [stdout] 144 +                 ray.l2r[(y as usize)] = cmp::min(x, ray.l2r[y as usize]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:145:25
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 ray.r2l[(y as usize)] = cmp::min(width - x - 1, ray.r2l[(y as usize)]);
[INFO] [stdout]     |                         ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 145 -                 ray.r2l[(y as usize)] = cmp::min(width - x - 1, ray.r2l[(y as usize)]);
[INFO] [stdout] 145 +                 ray.r2l[y as usize] = cmp::min(width - x - 1, ray.r2l[(y as usize)]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:145:73
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 ray.r2l[(y as usize)] = cmp::min(width - x - 1, ray.r2l[(y as usize)]);
[INFO] [stdout]     |                                                                         ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 145 -                 ray.r2l[(y as usize)] = cmp::min(width - x - 1, ray.r2l[(y as usize)]);
[INFO] [stdout] 145 +                 ray.r2l[(y as usize)] = cmp::min(width - x - 1, ray.r2l[y as usize]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:146:25
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 ray.t2b[(x as usize)] = cmp::min(y, ray.t2b[(x as usize)]);
[INFO] [stdout]     |                         ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 146 -                 ray.t2b[(x as usize)] = cmp::min(y, ray.t2b[(x as usize)]);
[INFO] [stdout] 146 +                 ray.t2b[x as usize] = cmp::min(y, ray.t2b[(x as usize)]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:146:61
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 ray.t2b[(x as usize)] = cmp::min(y, ray.t2b[(x as usize)]);
[INFO] [stdout]     |                                                             ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 146 -                 ray.t2b[(x as usize)] = cmp::min(y, ray.t2b[(x as usize)]);
[INFO] [stdout] 146 +                 ray.t2b[(x as usize)] = cmp::min(y, ray.t2b[x as usize]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:147:25
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 ray.b2t[(x as usize)] = cmp::min(height - y - 1, ray.b2t[(x as usize)]);
[INFO] [stdout]     |                         ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -                 ray.b2t[(x as usize)] = cmp::min(height - y - 1, ray.b2t[(x as usize)]);
[INFO] [stdout] 147 +                 ray.b2t[x as usize] = cmp::min(height - y - 1, ray.b2t[(x as usize)]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:147:74
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 ray.b2t[(x as usize)] = cmp::min(height - y - 1, ray.b2t[(x as usize)]);
[INFO] [stdout]     |                                                                          ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -                 ray.b2t[(x as usize)] = cmp::min(height - y - 1, ray.b2t[(x as usize)]);
[INFO] [stdout] 147 +                 ray.b2t[(x as usize)] = cmp::min(height - y - 1, ray.b2t[x as usize]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:148:46
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 if x <  width  / 2 { ray.m2l[(y as usize)] = cmp::min(width / 2 - x, ray.m2l[(y as usize)]); }
[INFO] [stdout]     |                                              ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 148 -                 if x <  width  / 2 { ray.m2l[(y as usize)] = cmp::min(width / 2 - x, ray.m2l[(y as usize)]); }
[INFO] [stdout] 148 +                 if x <  width  / 2 { ray.m2l[y as usize] = cmp::min(width / 2 - x, ray.m2l[(y as usize)]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:148:94
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 if x <  width  / 2 { ray.m2l[(y as usize)] = cmp::min(width / 2 - x, ray.m2l[(y as usize)]); }
[INFO] [stdout]     |                                                                                              ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 148 -                 if x <  width  / 2 { ray.m2l[(y as usize)] = cmp::min(width / 2 - x, ray.m2l[(y as usize)]); }
[INFO] [stdout] 148 +                 if x <  width  / 2 { ray.m2l[(y as usize)] = cmp::min(width / 2 - x, ray.m2l[y as usize]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:149:47
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 if x >=  width  / 2 { ray.m2r[(y as usize)] = cmp::min(x - width / 2, ray.m2r[(y as usize)]); }
[INFO] [stdout]     |                                               ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 149 -                 if x >=  width  / 2 { ray.m2r[(y as usize)] = cmp::min(x - width / 2, ray.m2r[(y as usize)]); }
[INFO] [stdout] 149 +                 if x >=  width  / 2 { ray.m2r[y as usize] = cmp::min(x - width / 2, ray.m2r[(y as usize)]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:149:95
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 if x >=  width  / 2 { ray.m2r[(y as usize)] = cmp::min(x - width / 2, ray.m2r[(y as usize)]); }
[INFO] [stdout]     |                                                                                               ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 149 -                 if x >=  width  / 2 { ray.m2r[(y as usize)] = cmp::min(x - width / 2, ray.m2r[(y as usize)]); }
[INFO] [stdout] 149 +                 if x >=  width  / 2 { ray.m2r[(y as usize)] = cmp::min(x - width / 2, ray.m2r[y as usize]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:150:46
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 if y <  height / 2 { ray.m2t[(x as usize)] = cmp::min(height / 2 - y, ray.m2t[(x as usize)]); }
[INFO] [stdout]     |                                              ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 150 -                 if y <  height / 2 { ray.m2t[(x as usize)] = cmp::min(height / 2 - y, ray.m2t[(x as usize)]); }
[INFO] [stdout] 150 +                 if y <  height / 2 { ray.m2t[x as usize] = cmp::min(height / 2 - y, ray.m2t[(x as usize)]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:150:95
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 if y <  height / 2 { ray.m2t[(x as usize)] = cmp::min(height / 2 - y, ray.m2t[(x as usize)]); }
[INFO] [stdout]     |                                                                                               ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 150 -                 if y <  height / 2 { ray.m2t[(x as usize)] = cmp::min(height / 2 - y, ray.m2t[(x as usize)]); }
[INFO] [stdout] 150 +                 if y <  height / 2 { ray.m2t[(x as usize)] = cmp::min(height / 2 - y, ray.m2t[x as usize]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:151:47
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 if y >=  height / 2 { ray.m2b[(x as usize)] = cmp::min(y - height / 2, ray.m2b[(x as usize)]); }
[INFO] [stdout]     |                                               ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 151 -                 if y >=  height / 2 { ray.m2b[(x as usize)] = cmp::min(y - height / 2, ray.m2b[(x as usize)]); }
[INFO] [stdout] 151 +                 if y >=  height / 2 { ray.m2b[x as usize] = cmp::min(y - height / 2, ray.m2b[(x as usize)]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:151:96
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 if y >=  height / 2 { ray.m2b[(x as usize)] = cmp::min(y - height / 2, ray.m2b[(x as usize)]); }
[INFO] [stdout]     |                                                                                                ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 151 -                 if y >=  height / 2 { ray.m2b[(x as usize)] = cmp::min(y - height / 2, ray.m2b[(x as usize)]); }
[INFO] [stdout] 151 +                 if y >=  height / 2 { ray.m2b[(x as usize)] = cmp::min(y - height / 2, ray.m2b[x as usize]); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:269:52
[INFO] [stdout]     |
[INFO] [stdout] 269 |                 if x < self.width - 1 &&  self.l2r[(y as usize)] == x      { print!("X"); }
[INFO] [stdout]     |                                                    ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 269 -                 if x < self.width - 1 &&  self.l2r[(y as usize)] == x      { print!("X"); }
[INFO] [stdout] 269 +                 if x < self.width - 1 &&  self.l2r[y as usize] == x      { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:270:97
[INFO] [stdout]     |
[INFO] [stdout] 270 |                 else if x > 0 && self.r2l[y as usize] < self.width && self.width - 1 - self.r2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout]     |                                                                                                 ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 270 -                 else if x > 0 && self.r2l[y as usize] < self.width && self.width - 1 - self.r2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout] 270 +                 else if x > 0 && self.r2l[y as usize] < self.width && self.width - 1 - self.r2l[y as usize] == x { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:271:52
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 else if y < height - 1 && self.t2b[(x as usize)] == y { print!("X"); }
[INFO] [stdout]     |                                                    ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 271 -                 else if y < height - 1 && self.t2b[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 271 +                 else if y < height - 1 && self.t2b[x as usize] == y { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:272:43
[INFO] [stdout]     |
[INFO] [stdout] 272 |                 else if y > 0 && self.b2t[(x as usize)] < height && height - 1 - self.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]     |                                           ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 272 -                 else if y > 0 && self.b2t[(x as usize)] < height && height - 1 - self.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 272 +                 else if y > 0 && self.b2t[x as usize] < height && height - 1 - self.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:272:91
[INFO] [stdout]     |
[INFO] [stdout] 272 |                 else if y > 0 && self.b2t[(x as usize)] < height && height - 1 - self.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]     |                                                                                           ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 272 -                 else if y > 0 && self.b2t[(x as usize)] < height && height - 1 - self.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 272 +                 else if y > 0 && self.b2t[(x as usize)] < height && height - 1 - self.b2t[x as usize] == y { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:273:60
[INFO] [stdout]     |
[INFO] [stdout] 273 |                 else if x > 0 && self.width / 2 - self.m2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout]     |                                                            ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 273 -                 else if x > 0 && self.width / 2 - self.m2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout] 273 +                 else if x > 0 && self.width / 2 - self.m2l[y as usize] == x { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:274:43
[INFO] [stdout]     |
[INFO] [stdout] 274 |                 else if x > 0 && self.m2r[(y as usize)] + self.width / 2 == x { print!("X"); }
[INFO] [stdout]     |                                           ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 274 -                 else if x > 0 && self.m2r[(y as usize)] + self.width / 2 == x { print!("X"); }
[INFO] [stdout] 274 +                 else if x > 0 && self.m2r[y as usize] + self.width / 2 == x { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:275:56
[INFO] [stdout]     |
[INFO] [stdout] 275 |                 else if y > 0 && height / 2 - self.m2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]     |                                                        ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 275 -                 else if y > 0 && height / 2 - self.m2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 275 +                 else if y > 0 && height / 2 - self.m2t[x as usize] == y { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/glyph_rays.rs:276:52
[INFO] [stdout]     |
[INFO] [stdout] 276 |                 else if y < height - 1 && self.m2b[(x as usize)] + height / 2 == y { print!("X"); }
[INFO] [stdout]     |                                                    ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 276 -                 else if y < height - 1 && self.m2b[(x as usize)] + height / 2 == y { print!("X"); }
[INFO] [stdout] 276 +                 else if y < height - 1 && self.m2b[x as usize] + height / 2 == y { print!("X"); }
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:18:48
[INFO] [stdout]    |
[INFO] [stdout] 18 |             if x < rays.width - 1 &&  rays.l2r[(y as usize)] == x      { print!("X"); }
[INFO] [stdout]    |                                                ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 18 -             if x < rays.width - 1 &&  rays.l2r[(y as usize)] == x      { print!("X"); }
[INFO] [stdout] 18 +             if x < rays.width - 1 &&  rays.l2r[y as usize] == x      { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:19:93
[INFO] [stdout]    |
[INFO] [stdout] 19 |             else if x > 0 && rays.r2l[y as usize] < rays.width && rays.width - 1 - rays.r2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout]    |                                                                                             ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -             else if x > 0 && rays.r2l[y as usize] < rays.width && rays.width - 1 - rays.r2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout] 19 +             else if x > 0 && rays.r2l[y as usize] < rays.width && rays.width - 1 - rays.r2l[y as usize] == x { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:20:48
[INFO] [stdout]    |
[INFO] [stdout] 20 |             else if y < height - 1 && rays.t2b[(x as usize)] == y { print!("X"); }
[INFO] [stdout]    |                                                ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 20 -             else if y < height - 1 && rays.t2b[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 20 +             else if y < height - 1 && rays.t2b[x as usize] == y { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 |             else if y > 0 && rays.b2t[(x as usize)] < height && height - 1 - rays.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]    |                                       ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 21 -             else if y > 0 && rays.b2t[(x as usize)] < height && height - 1 - rays.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 21 +             else if y > 0 && rays.b2t[x as usize] < height && height - 1 - rays.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:21:87
[INFO] [stdout]    |
[INFO] [stdout] 21 |             else if y > 0 && rays.b2t[(x as usize)] < height && height - 1 - rays.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]    |                                                                                       ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 21 -             else if y > 0 && rays.b2t[(x as usize)] < height && height - 1 - rays.b2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 21 +             else if y > 0 && rays.b2t[(x as usize)] < height && height - 1 - rays.b2t[x as usize] == y { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:22:56
[INFO] [stdout]    |
[INFO] [stdout] 22 |             else if x > 0 && rays.width / 2 - rays.m2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout]    |                                                        ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 22 -             else if x > 0 && rays.width / 2 - rays.m2l[(y as usize)] == x { print!("X"); }
[INFO] [stdout] 22 +             else if x > 0 && rays.width / 2 - rays.m2l[y as usize] == x { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:23:39
[INFO] [stdout]    |
[INFO] [stdout] 23 |             else if x > 0 && rays.m2r[(y as usize)] + rays.width / 2 == x { print!("X"); }
[INFO] [stdout]    |                                       ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 23 -             else if x > 0 && rays.m2r[(y as usize)] + rays.width / 2 == x { print!("X"); }
[INFO] [stdout] 23 +             else if x > 0 && rays.m2r[y as usize] + rays.width / 2 == x { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:24:52
[INFO] [stdout]    |
[INFO] [stdout] 24 |             else if y > 0 && height / 2 - rays.m2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout]    |                                                    ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 24 -             else if y > 0 && height / 2 - rays.m2t[(x as usize)] == y { print!("X"); }
[INFO] [stdout] 24 +             else if y > 0 && height / 2 - rays.m2t[x as usize] == y { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]   --> src/diagnostics.rs:25:48
[INFO] [stdout]    |
[INFO] [stdout] 25 |             else if y < height - 1 && rays.m2b[(x as usize)] + height / 2 == y { print!("X"); }
[INFO] [stdout]    |                                                ^          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 25 -             else if y < height - 1 && rays.m2b[(x as usize)] + height / 2 == y { print!("X"); }
[INFO] [stdout] 25 +             else if y < height - 1 && rays.m2b[x as usize] + height / 2 == y { print!("X"); }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(test)]
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error; 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] [stderr] error: could not document `rust-glyph-recog`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `rustdoc --edition=2018 --crate-type lib --crate-name rust_glyph_recog src/lib.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=768339bdcbbfc07c -L dependency=/opt/rustwide/target/debug/deps --extern rand=/opt/rustwide/target/debug/deps/librand-2b3d1c6d078825df.rmeta --extern rayon=/opt/rustwide/target/debug/deps/librayon-b06cffb98eda0ef9.rmeta --extern trees=/opt/rustwide/target/debug/deps/libtrees-e3e413aa37dc12b9.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1)
[INFO] running `Command { std: "docker" "inspect" "89c854c7433824469553e0aefef93e7421cce0e5a4f0e7d9cc92dfbbda460581", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "89c854c7433824469553e0aefef93e7421cce0e5a4f0e7d9cc92dfbbda460581", kill_on_drop: false }`
[INFO] [stdout] 89c854c7433824469553e0aefef93e7421cce0e5a4f0e7d9cc92dfbbda460581
