[INFO] cloning repository https://github.com/inthewaves/striped-matrix-reduction-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/inthewaves/striped-matrix-reduction-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finthewaves%2Fstriped-matrix-reduction-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finthewaves%2Fstriped-matrix-reduction-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6afd8e4ce02d0d5b3fca9ecdae88759e34ed44bc
[INFO] testing inthewaves/striped-matrix-reduction-rust/6afd8e4ce02d0d5b3fca9ecdae88759e34ed44bc against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finthewaves%2Fstriped-matrix-reduction-rust" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/inthewaves/striped-matrix-reduction-rust
[INFO] finished tweaking git repo https://github.com/inthewaves/striped-matrix-reduction-rust
[INFO] tweaked toml for git repo https://github.com/inthewaves/striped-matrix-reduction-rust written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/inthewaves/striped-matrix-reduction-rust on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/inthewaves/striped-matrix-reduction-rust 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: file `/workspace/builds/worker-2-tc1/source/benches/circuit_lengths.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `bin` target `circuit_lengths`
[INFO] [stderr]   * `bench` target `circuit_lengths`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded average v0.16.0
[INFO] [stderr]   Downloaded gray-codes v0.1.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0bf71ed844fd2d490e96f7a85e0a890fb66854465cef2cc400012b51431cbe0b
[INFO] running `Command { std: "docker" "start" "-a" "0bf71ed844fd2d490e96f7a85e0a890fb66854465cef2cc400012b51431cbe0b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0bf71ed844fd2d490e96f7a85e0a890fb66854465cef2cc400012b51431cbe0b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0bf71ed844fd2d490e96f7a85e0a890fb66854465cef2cc400012b51431cbe0b", kill_on_drop: false }`
[INFO] [stdout] 0bf71ed844fd2d490e96f7a85e0a890fb66854465cef2cc400012b51431cbe0b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3b2eb69985422989349956146161f340e9bb0d9d4e5f8fb1c06dce2dc13e707b
[INFO] running `Command { std: "docker" "start" "-a" "3b2eb69985422989349956146161f340e9bb0d9d4e5f8fb1c06dce2dc13e707b", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/benches/circuit_lengths.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `bin` target `circuit_lengths`
[INFO] [stderr]   * `bench` target `circuit_lengths`
[INFO] [stderr]    Compiling libm v0.2.11
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling num-bigint v0.3.3
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling bytemuck v1.22.0
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling float-ord v0.3.2
[INFO] [stderr]    Compiling gray-codes v0.1.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling easy-cast v0.5.3
[INFO] [stderr]    Compiling bitvec v1.0.1
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling wide v0.7.32
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling average v0.16.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling simba v0.9.0
[INFO] [stderr]    Compiling addchain v0.2.0
[INFO] [stderr]    Compiling ff_derive v0.13.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling rand v0.9.0
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling striped-matrix-reduction v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::ops::Div`
[INFO] [stdout]  --> src/f2.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::ops::Div;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `REPR_BYTES` should have an upper camel case name
[INFO] [stdout]  --> src/f3.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stdout]   |      ^^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBytes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `REPR_BITS` should have an upper camel case name
[INFO] [stdout]   --> src/f3.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stdout]    |      ^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::f2::F2`
[INFO] [stdout]  --> src/striped.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::f2::F2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::f3::F3`
[INFO] [stdout]  --> src/striped.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::f3::F3;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `OMatrix`
[INFO] [stdout]   --> src/striped.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 | use nalgebra::{DMatrix, Dyn, MatrixView, MatrixViewMut, OMatrix, U1};
[INFO] [stdout]    |                ^^^^^^^                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]   --> src/striped.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fmt::Debug;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LevelFilter` and `debug`
[INFO] [stdout]   --> src/striped.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | use log::{debug, LevelFilter};
[INFO] [stdout]    |           ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::gray_code::GrayCode`
[INFO] [stdout]   --> src/gray_code.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     use crate::gray_code::GrayCode;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gray_codes::GrayCode64`
[INFO] [stdout]   --> src/gray_code.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     use gray_codes::GrayCode64;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::f2::F2`
[INFO] [stdout]  --> src/cnot_synthesis.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::f2::F2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gauss_jordan_elimination_generic`
[INFO] [stdout]  --> src/cnot_synthesis.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::gauss_elim::{gauss_jordan_elimination_generic, GaussT};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]   --> src/cnot_synthesis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::debug;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `OMatrix`
[INFO] [stdout]   --> src/cnot_synthesis.rs:11:16
[INFO] [stdout]    |
[INFO] [stdout] 11 | use nalgebra::{DMatrix, Dyn, MatrixViewMut, OMatrix, U1};
[INFO] [stdout]    |                ^^^^^^^                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num::traits::float::FloatCore`
[INFO] [stdout]   --> src/striped.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use num::traits::float::FloatCore;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PrimeField`
[INFO] [stdout]  --> src/f3.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ff::{Field, PrimeField};
[INFO] [stdout]   |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epsilon`
[INFO] [stdout]   --> src/f2.rs:24:41
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epsilon`
[INFO] [stdout]   --> src/f2.rs:34:41
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_relative`
[INFO] [stdout]   --> src/f2.rs:34:65
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_relative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f2.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f2.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn is_in_subset(element: &u64) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `div`
[INFO] [stdout]    --> src/f2.rs:309:31
[INFO] [stdout]     |
[INFO] [stdout] 309 |     fn sqrt_ratio(num: &Self, div: &Self) -> (::ff::derive::subtle::Choice, Self) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_div`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/f2.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ----^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r0`
[INFO] [stdout]    --> src/f2.rs:352:31
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_r0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r1`
[INFO] [stdout]    --> src/f2.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f3.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `carry`
[INFO] [stdout]    --> src/f3.rs:428:18
[INFO] [stdout]     |
[INFO] [stdout] 428 |         let (r1, carry) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/f3.rs:493:40
[INFO] [stdout]     |
[INFO] [stdout] 493 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ----^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `carry2`
[INFO] [stdout]    --> src/f3.rs:496:18
[INFO] [stdout]     |
[INFO] [stdout] 496 |         let (r1, carry2) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stdout]     |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_carry2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gauss_elim.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut matrix = DMatrix::from_fn(n, n, |_, _| F2::from(rng.next_u64()));
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/striped.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |     for (i, l) in list {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cmp_native`, `sub_noborrow`, and `mont_reduce` are never used
[INFO] [stdout]    --> src/f2.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 321 | impl F2 {
[INFO] [stdout]     | ------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn cmp_native(&self, other: &F2) -> ::core::cmp::Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn sub_noborrow(&mut self, other: &F2) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `REPR_BYTES` is never used
[INFO] [stdout]  --> src/f3.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `REPR_BITS` is never used
[INFO] [stdout]   --> src/f3.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODULUS` is never used
[INFO] [stdout]   --> src/f3.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const MODULUS: REPR_BITS = [3u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `encode` is never used
[INFO] [stdout]   --> src/gray_code.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl GrayCode {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn encode(&self, x: usize) -> Vec<u64> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/circuit_lengths.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let mut cnot_synth_stats = MeanWithError::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/circuit_lengths.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut striped_synth_stats = MeanWithError::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/circuit_lengths.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let mut gaussian_elim_stats = MeanWithError::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.27s
[INFO] running `Command { std: "docker" "inspect" "3b2eb69985422989349956146161f340e9bb0d9d4e5f8fb1c06dce2dc13e707b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3b2eb69985422989349956146161f340e9bb0d9d4e5f8fb1c06dce2dc13e707b", kill_on_drop: false }`
[INFO] [stdout] 3b2eb69985422989349956146161f340e9bb0d9d4e5f8fb1c06dce2dc13e707b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 693f99dfc1f6f1fbb9539944bfd8ab5cf101eb1d52b544907c07228df50703b9
[INFO] running `Command { std: "docker" "start" "-a" "693f99dfc1f6f1fbb9539944bfd8ab5cf101eb1d52b544907c07228df50703b9", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/benches/circuit_lengths.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `bin` target `circuit_lengths`
[INFO] [stderr]   * `bench` target `circuit_lengths`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling clap_builder v4.5.36
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling jiff v0.2.6
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling average v0.16.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling simba v0.9.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling clap v4.5.36
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling env_filter v0.1.3
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling striped-matrix-reduction v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::ops::Div`
[INFO] [stdout]  --> src/f2.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::ops::Div;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `REPR_BYTES` should have an upper camel case name
[INFO] [stdout]  --> src/f3.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stdout]   |      ^^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBytes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `REPR_BITS` should have an upper camel case name
[INFO] [stdout]   --> src/f3.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stdout]    |      ^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::f2::F2`
[INFO] [stdout]  --> src/striped.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::f2::F2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::f3::F3`
[INFO] [stdout]  --> src/striped.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::f3::F3;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `OMatrix`
[INFO] [stdout]   --> src/striped.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 | use nalgebra::{DMatrix, Dyn, MatrixView, MatrixViewMut, OMatrix, U1};
[INFO] [stdout]    |                ^^^^^^^                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]   --> src/striped.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fmt::Debug;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LevelFilter` and `debug`
[INFO] [stdout]   --> src/striped.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | use log::{debug, LevelFilter};
[INFO] [stdout]    |           ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::gray_code::GrayCode`
[INFO] [stdout]   --> src/gray_code.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     use crate::gray_code::GrayCode;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gray_codes::GrayCode64`
[INFO] [stdout]   --> src/gray_code.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     use gray_codes::GrayCode64;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::f2::F2`
[INFO] [stdout]  --> src/cnot_synthesis.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::f2::F2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gauss_jordan_elimination_generic`
[INFO] [stdout]  --> src/cnot_synthesis.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::gauss_elim::{gauss_jordan_elimination_generic, GaussT};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]   --> src/cnot_synthesis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::debug;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `OMatrix`
[INFO] [stdout]   --> src/cnot_synthesis.rs:11:16
[INFO] [stdout]    |
[INFO] [stdout] 11 | use nalgebra::{DMatrix, Dyn, MatrixViewMut, OMatrix, U1};
[INFO] [stdout]    |                ^^^^^^^                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num::traits::float::FloatCore`
[INFO] [stdout]   --> src/striped.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use num::traits::float::FloatCore;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PrimeField`
[INFO] [stdout]  --> src/f3.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ff::{Field, PrimeField};
[INFO] [stdout]   |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epsilon`
[INFO] [stdout]   --> src/f2.rs:24:41
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epsilon`
[INFO] [stdout]   --> src/f2.rs:34:41
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_relative`
[INFO] [stdout]   --> src/f2.rs:34:65
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_relative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f2.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f2.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn is_in_subset(element: &u64) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `div`
[INFO] [stdout]    --> src/f2.rs:309:31
[INFO] [stdout]     |
[INFO] [stdout] 309 |     fn sqrt_ratio(num: &Self, div: &Self) -> (::ff::derive::subtle::Choice, Self) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_div`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/f2.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ----^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r0`
[INFO] [stdout]    --> src/f2.rs:352:31
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_r0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r1`
[INFO] [stdout]    --> src/f2.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f3.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `carry`
[INFO] [stdout]    --> src/f3.rs:428:18
[INFO] [stdout]     |
[INFO] [stdout] 428 |         let (r1, carry) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/f3.rs:493:40
[INFO] [stdout]     |
[INFO] [stdout] 493 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ----^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `carry2`
[INFO] [stdout]    --> src/f3.rs:496:18
[INFO] [stdout]     |
[INFO] [stdout] 496 |         let (r1, carry2) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stdout]     |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_carry2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gauss_elim.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut matrix = DMatrix::from_fn(n, n, |_, _| F2::from(rng.next_u64()));
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Div`
[INFO] [stdout]  --> src/f2.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::ops::Div;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/striped.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |     for (i, l) in list {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `REPR_BYTES` should have an upper camel case name
[INFO] [stdout]  --> src/f3.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stdout]   |      ^^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBytes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `REPR_BITS` should have an upper camel case name
[INFO] [stdout]   --> src/f3.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stdout]    |      ^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]   --> src/striped.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fmt::Debug;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]   --> src/striped.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | use log::{debug, LevelFilter};
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::debug`
[INFO] [stdout]   --> src/cnot_synthesis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use log::debug;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cmp_native`, `sub_noborrow`, and `mont_reduce` are never used
[INFO] [stdout]    --> src/f2.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 321 | impl F2 {
[INFO] [stdout]     | ------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn cmp_native(&self, other: &F2) -> ::core::cmp::Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn sub_noborrow(&mut self, other: &F2) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `REPR_BYTES` is never used
[INFO] [stdout]  --> src/f3.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `REPR_BITS` is never used
[INFO] [stdout]   --> src/f3.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODULUS` is never used
[INFO] [stdout]   --> src/f3.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const MODULUS: REPR_BITS = [3u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `encode` is never used
[INFO] [stdout]   --> src/gray_code.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl GrayCode {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn encode(&self, x: usize) -> Vec<u64> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num::traits::float::FloatCore`
[INFO] [stdout]   --> src/striped.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use num::traits::float::FloatCore;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PrimeField`
[INFO] [stdout]  --> src/f3.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ff::{Field, PrimeField};
[INFO] [stdout]   |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epsilon`
[INFO] [stdout]   --> src/f2.rs:24:41
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `epsilon`
[INFO] [stdout]   --> src/f2.rs:34:41
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_relative`
[INFO] [stdout]   --> src/f2.rs:34:65
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stdout]    |                                                                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_relative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f2.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f2.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn is_in_subset(element: &u64) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `div`
[INFO] [stdout]    --> src/f2.rs:309:31
[INFO] [stdout]     |
[INFO] [stdout] 309 |     fn sqrt_ratio(num: &Self, div: &Self) -> (::ff::derive::subtle::Choice, Self) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_div`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/f2.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ----^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r0`
[INFO] [stdout]    --> src/f2.rs:352:31
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_r0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r1`
[INFO] [stdout]    --> src/f2.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `element`
[INFO] [stdout]   --> src/f3.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `carry`
[INFO] [stdout]    --> src/f3.rs:428:18
[INFO] [stdout]     |
[INFO] [stdout] 428 |         let (r1, carry) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_carry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/f3.rs:493:40
[INFO] [stdout]     |
[INFO] [stdout] 493 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |                                        ----^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `carry2`
[INFO] [stdout]    --> src/f3.rs:496:18
[INFO] [stdout]     |
[INFO] [stdout] 496 |         let (r1, carry2) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stdout]     |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_carry2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/gauss_elim.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut matrix = DMatrix::from_fn(n, n, |_, _| F2::from(rng.next_u64()));
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]    --> src/striped.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |     for (i, l) in list {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/striped.rs:357:9
[INFO] [stdout]     |
[INFO] [stdout] 357 |     let mut dm = make_matrix(3, 3, &[
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/striped.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 368 |     let mut dm = make_matrix(3, 3, &[
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/striped.rs:378:9
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let mut dm = make_matrix(3, 3, &[
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/striped.rs:387:9
[INFO] [stdout]     |
[INFO] [stdout] 387 |     let mut dm: OMatrix<F3, Dyn, Dyn> = DMatrix::from_row_slice(3, 3, &[
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/striped.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut dm: OMatrix<u8, Dyn, Dyn> = DMatrix::from_row_slice(nrows, ncols, entries);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cmp_native`, `sub_noborrow`, and `mont_reduce` are never used
[INFO] [stdout]    --> src/f2.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 321 | impl F2 {
[INFO] [stdout]     | ------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn cmp_native(&self, other: &F2) -> ::core::cmp::Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     fn sub_noborrow(&mut self, other: &F2) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `REPR_BYTES` is never used
[INFO] [stdout]  --> src/f3.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stdout]   |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `REPR_BITS` is never used
[INFO] [stdout]   --> src/f3.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MODULUS` is never used
[INFO] [stdout]   --> src/f3.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const MODULUS: REPR_BITS = [3u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/circuit_lengths.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let mut cnot_synth_stats = MeanWithError::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/circuit_lengths.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut striped_synth_stats = MeanWithError::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/circuit_lengths.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let mut gaussian_elim_stats = MeanWithError::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 34.54s
[INFO] running `Command { std: "docker" "inspect" "693f99dfc1f6f1fbb9539944bfd8ab5cf101eb1d52b544907c07228df50703b9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "693f99dfc1f6f1fbb9539944bfd8ab5cf101eb1d52b544907c07228df50703b9", kill_on_drop: false }`
[INFO] [stdout] 693f99dfc1f6f1fbb9539944bfd8ab5cf101eb1d52b544907c07228df50703b9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7aade084fe49f30500c0f0bd4be671797edeacc3f2ae2bd1986e1ff714195fd1
[INFO] running `Command { std: "docker" "start" "-a" "7aade084fe49f30500c0f0bd4be671797edeacc3f2ae2bd1986e1ff714195fd1", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/benches/circuit_lengths.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `bin` target `circuit_lengths`
[INFO] [stderr]   * `bench` target `circuit_lengths`
[INFO] [stderr] warning: unused import: `std::ops::Div`
[INFO] [stderr]  --> src/f2.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::ops::Div;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `REPR_BYTES` should have an upper camel case name
[INFO] [stderr]  --> src/f3.rs:9:6
[INFO] [stderr]   |
[INFO] [stderr] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stderr]   |      ^^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBytes`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `REPR_BITS` should have an upper camel case name
[INFO] [stderr]   --> src/f3.rs:10:6
[INFO] [stderr]    |
[INFO] [stderr] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stderr]    |      ^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBits`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::f2::F2`
[INFO] [stderr]  --> src/striped.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::f2::F2;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::f3::F3`
[INFO] [stderr]  --> src/striped.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::f3::F3;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DMatrix` and `OMatrix`
[INFO] [stderr]   --> src/striped.rs:12:16
[INFO] [stderr]    |
[INFO] [stderr] 12 | use nalgebra::{DMatrix, Dyn, MatrixView, MatrixViewMut, OMatrix, U1};
[INFO] [stderr]    |                ^^^^^^^                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::Debug`
[INFO] [stderr]   --> src/striped.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::fmt::Debug;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `LevelFilter` and `debug`
[INFO] [stderr]   --> src/striped.rs:16:11
[INFO] [stderr]    |
[INFO] [stderr] 16 | use log::{debug, LevelFilter};
[INFO] [stderr]    |           ^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::gray_code::GrayCode`
[INFO] [stderr]   --> src/gray_code.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 73 |     use crate::gray_code::GrayCode;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `gray_codes::GrayCode64`
[INFO] [stderr]   --> src/gray_code.rs:74:9
[INFO] [stderr]    |
[INFO] [stderr] 74 |     use gray_codes::GrayCode64;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::f2::F2`
[INFO] [stderr]  --> src/cnot_synthesis.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::f2::F2;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `gauss_jordan_elimination_generic`
[INFO] [stderr]  --> src/cnot_synthesis.rs:9:25
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::gauss_elim::{gauss_jordan_elimination_generic, GaussT};
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `log::debug`
[INFO] [stderr]   --> src/cnot_synthesis.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use log::debug;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DMatrix` and `OMatrix`
[INFO] [stderr]   --> src/cnot_synthesis.rs:11:16
[INFO] [stderr]    |
[INFO] [stderr] 11 | use nalgebra::{DMatrix, Dyn, MatrixViewMut, OMatrix, U1};
[INFO] [stderr]    |                ^^^^^^^                      ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `num::traits::float::FloatCore`
[INFO] [stderr]   --> src/striped.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use num::traits::float::FloatCore;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `PrimeField`
[INFO] [stderr]  --> src/f3.rs:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | use ff::{Field, PrimeField};
[INFO] [stderr]   |                 ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `epsilon`
[INFO] [stderr]   --> src/f2.rs:24:41
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool {
[INFO] [stderr]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `epsilon`
[INFO] [stderr]   --> src/f2.rs:34:41
[INFO] [stderr]    |
[INFO] [stderr] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stderr]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_epsilon`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `max_relative`
[INFO] [stderr]   --> src/f2.rs:34:65
[INFO] [stderr]    |
[INFO] [stderr] 34 |     fn relative_eq(&self, other: &Self, epsilon: Self::Epsilon, max_relative: Self::Epsilon) -> bool {
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_relative`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `element`
[INFO] [stderr]   --> src/f2.rs:48:21
[INFO] [stderr]    |
[INFO] [stderr] 48 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stderr]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `element`
[INFO] [stderr]   --> src/f2.rs:61:21
[INFO] [stderr]    |
[INFO] [stderr] 61 |     fn is_in_subset(element: &u64) -> bool {
[INFO] [stderr]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `div`
[INFO] [stderr]    --> src/f2.rs:309:31
[INFO] [stderr]     |
[INFO] [stderr] 309 |     fn sqrt_ratio(num: &Self, div: &Self) -> (::ff::derive::subtle::Choice, Self) {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_div`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/f2.rs:352:40
[INFO] [stderr]     |
[INFO] [stderr] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stderr]     |                                        ----^^
[INFO] [stderr]     |                                        |
[INFO] [stderr]     |                                        help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r0`
[INFO] [stderr]    --> src/f2.rs:352:31
[INFO] [stderr]     |
[INFO] [stderr] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stderr]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_r0`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r1`
[INFO] [stderr]    --> src/f2.rs:352:40
[INFO] [stderr]     |
[INFO] [stderr] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stderr]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `element`
[INFO] [stderr]   --> src/f3.rs:82:21
[INFO] [stderr]    |
[INFO] [stderr] 82 |     fn is_in_subset(element: &u8) -> bool {
[INFO] [stderr]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_element`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `carry`
[INFO] [stderr]    --> src/f3.rs:428:18
[INFO] [stderr]     |
[INFO] [stderr] 428 |         let (r1, carry) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stderr]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_carry`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/f3.rs:493:40
[INFO] [stderr]     |
[INFO] [stderr] 493 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stderr]     |                                        ----^^
[INFO] [stderr]     |                                        |
[INFO] [stderr]     |                                        help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `carry2`
[INFO] [stderr]    --> src/f3.rs:496:18
[INFO] [stderr]     |
[INFO] [stderr] 496 |         let (r1, carry2) = ::ff::derive::adc(r1, 0, carry);
[INFO] [stderr]     |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_carry2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/gauss_elim.rs:63:13
[INFO] [stderr]    |
[INFO] [stderr] 63 |         let mut matrix = DMatrix::from_fn(n, n, |_, _| F2::from(rng.next_u64()));
[INFO] [stderr]    |             ----^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `l`
[INFO] [stderr]    --> src/striped.rs:197:13
[INFO] [stderr]     |
[INFO] [stderr] 197 |     for (i, l) in list {
[INFO] [stderr]     |             ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stderr] 
[INFO] [stderr] warning: methods `cmp_native`, `sub_noborrow`, and `mont_reduce` are never used
[INFO] [stderr]    --> src/f2.rs:325:8
[INFO] [stderr]     |
[INFO] [stderr] 321 | impl F2 {
[INFO] [stderr]     | ------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 325 |     fn cmp_native(&self, other: &F2) -> ::core::cmp::Ordering {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 339 |     fn sub_noborrow(&mut self, other: &F2) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 352 |     fn mont_reduce(&mut self, r0: u64, mut r1: u64) {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `REPR_BYTES` is never used
[INFO] [stderr]  --> src/f3.rs:9:6
[INFO] [stderr]   |
[INFO] [stderr] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stderr]   |      ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `REPR_BITS` is never used
[INFO] [stderr]   --> src/f3.rs:10:6
[INFO] [stderr]    |
[INFO] [stderr] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stderr]    |      ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MODULUS` is never used
[INFO] [stderr]   --> src/f3.rs:12:7
[INFO] [stderr]    |
[INFO] [stderr] 12 | const MODULUS: REPR_BITS = [3u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8, 0u8];
[INFO] [stderr]    |       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `encode` is never used
[INFO] [stderr]   --> src/gray_code.rs:43:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl GrayCode {
[INFO] [stderr]    | ------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 43 |     pub fn encode(&self, x: usize) -> Vec<u64> {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `striped-matrix-reduction` (lib) generated 36 warnings (run `cargo fix --lib -p striped-matrix-reduction` to apply 27 suggestions)
[INFO] [stderr] warning: unused import: `debug`
[INFO] [stderr]   --> src/striped.rs:16:11
[INFO] [stderr]    |
[INFO] [stderr] 16 | use log::{debug, LevelFilter};
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/striped.rs:357:9
[INFO] [stderr]     |
[INFO] [stderr] 357 |     let mut dm = make_matrix(3, 3, &[
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/striped.rs:368:9
[INFO] [stderr]     |
[INFO] [stderr] 368 |     let mut dm = make_matrix(3, 3, &[
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/striped.rs:378:9
[INFO] [stderr]     |
[INFO] [stderr] 378 |     let mut dm = make_matrix(3, 3, &[
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/striped.rs:387:9
[INFO] [stderr]     |
[INFO] [stderr] 387 |     let mut dm: OMatrix<F3, Dyn, Dyn> = DMatrix::from_row_slice(3, 3, &[
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/striped.rs:352:13
[INFO] [stderr]     |
[INFO] [stderr] 352 |         let mut dm: OMatrix<u8, Dyn, Dyn> = DMatrix::from_row_slice(nrows, ncols, entries);
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> benches/circuit_lengths.rs:28:13
[INFO] [stderr]    |
[INFO] [stderr] 28 |         let mut cnot_synth_stats = MeanWithError::new();
[INFO] [stderr]    |             ----^^^^^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> benches/circuit_lengths.rs:29:13
[INFO] [stderr]    |
[INFO] [stderr] 29 |         let mut striped_synth_stats = MeanWithError::new();
[INFO] [stderr]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> benches/circuit_lengths.rs:30:13
[INFO] [stderr]    |
[INFO] [stderr] 30 |         let mut gaussian_elim_stats = MeanWithError::new();
[INFO] [stderr]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `striped-matrix-reduction` (lib test) generated 32 warnings (26 duplicates) (run `cargo fix --lib -p striped-matrix-reduction --tests` to apply 6 suggestions)
[INFO] [stderr] warning: `striped-matrix-reduction` (bin "circuit_lengths" test) generated 3 warnings (run `cargo fix --bin "circuit_lengths" -p striped-matrix-reduction --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/striped_matrix_reduction-219b6ff4e67ebe1a)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test f2::test::test_eq ... ok
[INFO] [stdout] test cnot_synthesis::test_cnot_synth ... ok
[INFO] [stdout] test f2::test::test_mul ... ok
[INFO] [stdout] test gauss_elim::test::test_elim_col_nonsquare_col_zeros ... ok
[INFO] [stdout] test gauss_elim::test::test_gauss_jordan_elimination_generic ... ok
[INFO] [stdout] test gauss_elim::test::test_elim_all_matrices ... ok
[INFO] [stdout] test cnot_synthesis::test_cnot_crash ... ok
[INFO] [stdout] test gray_code::test::test_decode ... ok
[INFO] [stdout] test gauss_elim::test::test_gauss_elimination_generic ... ok
[INFO] [stdout] test striped::test_edge_case ... ok
[INFO] [stdout] test striped::test_find_line_indep_rows ... ok
[INFO] [stdout] test gray_code::test::test_encode ... ok
[INFO] [stdout] test striped::test_reduce_stripe_5x5 ... ok
[INFO] [stdout] test striped::test_reduce_stripe ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests benches/circuit_lengths.rs (/opt/rustwide/target/debug/deps/circuit_lengths-f5fdd53307b32a3a)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests striped_matrix_reduction
[INFO] [stderr] warning: type `REPR_BYTES` should have an upper camel case name
[INFO] [stderr]  --> src/f3.rs:9:6
[INFO] [stderr]   |
[INFO] [stderr] 9 | type REPR_BYTES = [u8; 8usize];
[INFO] [stderr]   |      ^^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBytes`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `REPR_BITS` should have an upper camel case name
[INFO] [stderr]   --> src/f3.rs:10:6
[INFO] [stderr]    |
[INFO] [stderr] 10 | type REPR_BITS = REPR_BYTES;
[INFO] [stderr]    |      ^^^^^^^^^ help: convert the identifier to upper camel case: `ReprBits`
[INFO] [stderr] 
[INFO] [stderr] warning: 2 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7aade084fe49f30500c0f0bd4be671797edeacc3f2ae2bd1986e1ff714195fd1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7aade084fe49f30500c0f0bd4be671797edeacc3f2ae2bd1986e1ff714195fd1", kill_on_drop: false }`
[INFO] [stdout] 7aade084fe49f30500c0f0bd4be671797edeacc3f2ae2bd1986e1ff714195fd1
