[INFO] cloning repository https://github.com/CJD13/algebra
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/CJD13/algebra" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCJD13%2Falgebra", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCJD13%2Falgebra'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b85f7669ce3dd1c341d978b8ad3c8b74b88b117f
[INFO] building CJD13/algebra against try#334963c956d25708feab489a3816ae63f639355d for pr-135216
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCJD13%2Falgebra" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/CJD13/algebra on toolchain 334963c956d25708feab489a3816ae63f639355d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/CJD13/algebra
[INFO] finished tweaking git repo https://github.com/CJD13/algebra
[INFO] tweaked toml for git repo https://github.com/CJD13/algebra written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/CJD13/algebra 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" "+334963c956d25708feab489a3816ae63f639355d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a8d846e779a896569df22d6401be4f3a942502add7009f6a99c7c147a0810a8f
[INFO] running `Command { std: "docker" "start" "-a" "a8d846e779a896569df22d6401be4f3a942502add7009f6a99c7c147a0810a8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a8d846e779a896569df22d6401be4f3a942502add7009f6a99c7c147a0810a8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a8d846e779a896569df22d6401be4f3a942502add7009f6a99c7c147a0810a8f", kill_on_drop: false }`
[INFO] [stdout] a8d846e779a896569df22d6401be4f3a942502add7009f6a99c7c147a0810a8f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8eecf028fbc8344c64f0890506c49a52936f29ea864c632226947c2419508bb4
[INFO] running `Command { std: "docker" "start" "-a" "8eecf028fbc8344c64f0890506c49a52936f29ea864c632226947c2419508bb4", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling take_mut v0.2.2
[INFO] [stderr]    Compiling algebra v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `i64AdjX` should have an upper camel case name
[INFO] [stdout]    --> src/polynomial.rs:387:6
[INFO] [stdout]     |
[INFO] [stdout] 387 | type i64AdjX=Polynomial<i64,StandardOps>;
[INFO] [stdout]     |      ^^^^^^^ help: convert the identifier to upper camel case: `I64adjX`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subgroup`
[INFO] [stdout]  --> src/quotient.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 |         group::{Group, NormalSubgroup, Subgroup},
[INFO] [stdout]   |                                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbelianGroup`
[INFO] [stdout]  --> src/structure/ring.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AbelianGroup`, `Monoid`, and `Subgroup`
[INFO] [stdout]  --> src/structure/euclidean_ring.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field};
[INFO] [stdout]   |                            ^^^^^^^^  ^^^^^^^^^^^^            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbsorbingSubset`
[INFO] [stdout]  --> src/structure/euclidean_ring.rs:4:70
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field};
[INFO] [stdout]   |                                                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subset`
[INFO] [stdout]  --> src/quotient.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 |     set::{Set, Subset},
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbsorbingSubset`
[INFO] [stdout]  --> src/quotient.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 |         monoid::{Monoid, AbsorbingSubset}, ring::{Ideal, RingOperations, Ring},
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let (q,r) = a.divide(&b);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `divisor`
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:49:23
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn remainder(self,divisor:&Self) -> Self {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_divisor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `O0` is never used
[INFO] [stdout]  --> src/operation.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait O0<S> {
[INFO] [stdout]   |           ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `O1` is never used
[INFO] [stdout]  --> src/operation.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait O1<S> {
[INFO] [stdout]   |           ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `of` is never used
[INFO] [stdout]    --> src/polynomial.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 59  | / impl<R, O> Polynomial<R, O>
[INFO] [stdout] 60  | | where
[INFO] [stdout] 61  | |     O: RingOperations<R>,
[INFO] [stdout] 62  | |     R: Ring<O>,
[INFO] [stdout]     | |_______________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 161 |       pub fn of(&self, x: R) -> R {
[INFO] [stdout]     |              ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XSquaredPlus1` is never constructed
[INFO] [stdout]    --> src/polynomial.rs:388:8
[INFO] [stdout]     |
[INFO] [stdout] 388 | struct XSquaredPlus1;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GaussianI64` is never used
[INFO] [stdout]    --> src/polynomial.rs:392:6
[INFO] [stdout]     |
[INFO] [stdout] 392 | type GaussianI64=QuotientRing<i64AdjX,PolyOps<i64,StandardOps>,Multiples<i64AdjX,PolyOps<i64,StandardOps>,XSquaredPlus1>>;
[INFO] [stdout]     |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `IntMultiples` is never used
[INFO] [stdout]   --> src/quotient.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type IntMultiples<const N:i64>=Multiples<i64,StandardOps,IntWrap<N>>;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FiniteSubset` is never used
[INFO] [stdout]   --> src/set.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait FiniteSubset<T>: Subset<T> + IntoIterator<Item = T>
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FiniteSet` is never used
[INFO] [stdout]   --> src/set.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub trait FiniteSet: Set + IntoIterator<Item = Self> {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `pow` is never used
[INFO] [stdout]   --> src/structure/group.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub trait Group<Operation: O2<Self>>: Monoid<Operation> {
[INFO] [stdout]    |           ----- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 11 |     fn pow(a: Self, n: i64) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pow` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 6  | pub trait Monoid<Operation: O2<Self>>: Set {
[INFO] [stdout]    |           ------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 10 |     fn pow(self, n: u64) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Submonoid` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub trait Submonoid<M,O:O2<M>>:Subset<M>+Monoid<O> where M: Monoid<O>,O:O2<Self> {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `times` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub trait AbsorbingSubset<M,O:O2<M>>:Subset<M> where M: Monoid<O>{
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn times(self, m:&M) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `minus`, `from_integer`, and `pow` are never used
[INFO] [stdout]   --> src/structure/ring.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait Ring<O>: Group<O::PLUS> + Monoid<O::TIMES>
[INFO] [stdout]    |           ---- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn minus(self, other: &Self) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn from_integer(n: u64) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn pow(self, n:u64)->Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `norm`, `bézout`, and `gcd` are never used
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:7:8
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait EuclideanRing<O:RingOperations<Self>>:Ring<O> {
[INFO] [stdout]    |           ------------- associated items in this trait
[INFO] [stdout] 6  |     //The Euclidean norm of the ring.
[INFO] [stdout] 7  |     fn norm(&self) -> Degree;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn bézout(a:Self,b:Self)->(Self,Self){
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn gcd(a:Self,b:Self) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Outer` is never used
[INFO] [stdout]  --> src/test.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Outer<S: Inner>
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Inner` is never used
[INFO] [stdout]  --> src/test.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | trait Inner {
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Bound` is never used
[INFO] [stdout]   --> src/test.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | trait Bound {}
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `xPower` should have a snake case name
[INFO] [stdout]    --> src/polynomial.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let mut xPower = R::one();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `x_power`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.64s
[INFO] running `Command { std: "docker" "inspect" "8eecf028fbc8344c64f0890506c49a52936f29ea864c632226947c2419508bb4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8eecf028fbc8344c64f0890506c49a52936f29ea864c632226947c2419508bb4", kill_on_drop: false }`
[INFO] [stdout] 8eecf028fbc8344c64f0890506c49a52936f29ea864c632226947c2419508bb4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a63d32e29cdfdb91aab250b4fff107ccd6df1deb989223e71d14c981ae043c8e
[INFO] running `Command { std: "docker" "start" "-a" "a63d32e29cdfdb91aab250b4fff107ccd6df1deb989223e71d14c981ae043c8e", kill_on_drop: false }`
[INFO] [stdout] warning: type `i64AdjX` should have an upper camel case name
[INFO] [stdout]    --> src/polynomial.rs:387:6
[INFO] [stdout]     |
[INFO] [stdout] 387 | type i64AdjX=Polynomial<i64,StandardOps>;
[INFO] [stdout]     |      ^^^^^^^ help: convert the identifier to upper camel case: `I64adjX`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subgroup`
[INFO] [stdout]  --> src/quotient.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 |         group::{Group, NormalSubgroup, Subgroup},
[INFO] [stdout]   |                                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling algebra v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `AbelianGroup`
[INFO] [stdout]  --> src/structure/ring.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AbelianGroup`, `Monoid`, and `Subgroup`
[INFO] [stdout]  --> src/structure/euclidean_ring.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field};
[INFO] [stdout]   |                            ^^^^^^^^  ^^^^^^^^^^^^            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbsorbingSubset`
[INFO] [stdout]  --> src/structure/euclidean_ring.rs:4:70
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field};
[INFO] [stdout]   |                                                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subset`
[INFO] [stdout]  --> src/quotient.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 |     set::{Set, Subset},
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbsorbingSubset`
[INFO] [stdout]  --> src/quotient.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 |         monoid::{Monoid, AbsorbingSubset}, ring::{Ideal, RingOperations, Ring},
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let (q,r) = a.divide(&b);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `divisor`
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:49:23
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn remainder(self,divisor:&Self) -> Self {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_divisor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `O0` is never used
[INFO] [stdout]  --> src/operation.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait O0<S> {
[INFO] [stdout]   |           ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `O1` is never used
[INFO] [stdout]  --> src/operation.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait O1<S> {
[INFO] [stdout]   |           ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `of` is never used
[INFO] [stdout]    --> src/polynomial.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 59  | / impl<R, O> Polynomial<R, O>
[INFO] [stdout] 60  | | where
[INFO] [stdout] 61  | |     O: RingOperations<R>,
[INFO] [stdout] 62  | |     R: Ring<O>,
[INFO] [stdout]     | |_______________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 161 |       pub fn of(&self, x: R) -> R {
[INFO] [stdout]     |              ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XSquaredPlus1` is never constructed
[INFO] [stdout]    --> src/polynomial.rs:388:8
[INFO] [stdout]     |
[INFO] [stdout] 388 | struct XSquaredPlus1;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GaussianI64` is never used
[INFO] [stdout]    --> src/polynomial.rs:392:6
[INFO] [stdout]     |
[INFO] [stdout] 392 | type GaussianI64=QuotientRing<i64AdjX,PolyOps<i64,StandardOps>,Multiples<i64AdjX,PolyOps<i64,StandardOps>,XSquaredPlus1>>;
[INFO] [stdout]     |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `IntMultiples` is never used
[INFO] [stdout]   --> src/quotient.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type IntMultiples<const N:i64>=Multiples<i64,StandardOps,IntWrap<N>>;
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FiniteSubset` is never used
[INFO] [stdout]   --> src/set.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait FiniteSubset<T>: Subset<T> + IntoIterator<Item = T>
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FiniteSet` is never used
[INFO] [stdout]   --> src/set.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub trait FiniteSet: Set + IntoIterator<Item = Self> {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `pow` is never used
[INFO] [stdout]   --> src/structure/group.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub trait Group<Operation: O2<Self>>: Monoid<Operation> {
[INFO] [stdout]    |           ----- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 11 |     fn pow(a: Self, n: i64) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pow` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 6  | pub trait Monoid<Operation: O2<Self>>: Set {
[INFO] [stdout]    |           ------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 10 |     fn pow(self, n: u64) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Submonoid` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub trait Submonoid<M,O:O2<M>>:Subset<M>+Monoid<O> where M: Monoid<O>,O:O2<Self> {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `times` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub trait AbsorbingSubset<M,O:O2<M>>:Subset<M> where M: Monoid<O>{
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn times(self, m:&M) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `minus`, `from_integer`, and `pow` are never used
[INFO] [stdout]   --> src/structure/ring.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait Ring<O>: Group<O::PLUS> + Monoid<O::TIMES>
[INFO] [stdout]    |           ---- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn minus(self, other: &Self) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn from_integer(n: u64) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn pow(self, n:u64)->Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `norm`, `bézout`, and `gcd` are never used
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:7:8
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait EuclideanRing<O:RingOperations<Self>>:Ring<O> {
[INFO] [stdout]    |           ------------- associated items in this trait
[INFO] [stdout] 6  |     //The Euclidean norm of the ring.
[INFO] [stdout] 7  |     fn norm(&self) -> Degree;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn bézout(a:Self,b:Self)->(Self,Self){
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn gcd(a:Self,b:Self) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Outer` is never used
[INFO] [stdout]  --> src/test.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Outer<S: Inner>
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Inner` is never used
[INFO] [stdout]  --> src/test.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | trait Inner {
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Bound` is never used
[INFO] [stdout]   --> src/test.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | trait Bound {}
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `xPower` should have a snake case name
[INFO] [stdout]    --> src/polynomial.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let mut xPower = R::one();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `x_power`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `i64AdjX` should have an upper camel case name
[INFO] [stdout]    --> src/polynomial.rs:387:6
[INFO] [stdout]     |
[INFO] [stdout] 387 | type i64AdjX=Polynomial<i64,StandardOps>;
[INFO] [stdout]     |      ^^^^^^^ help: convert the identifier to upper camel case: `I64adjX`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subgroup`
[INFO] [stdout]  --> src/quotient.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 |         group::{Group, NormalSubgroup, Subgroup},
[INFO] [stdout]   |                                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbelianGroup`
[INFO] [stdout]  --> src/structure/ring.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AbelianGroup`, `Monoid`, and `Subgroup`
[INFO] [stdout]  --> src/structure/euclidean_ring.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field};
[INFO] [stdout]   |                            ^^^^^^^^  ^^^^^^^^^^^^            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QuotientGroup`, `euclidean_ring::EuclideanRing`, `group::Group`, `impls`, and `monoid::Monoid`
[INFO] [stdout]   --> src/lib.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |         quotient::{ QuotientGroup, QuotientRing, IntMultiples},
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout] 21 |         structure::{ring::{Ring}, group::Group, monoid::Monoid, euclidean_ring::EuclideanRing},
[INFO] [stdout]    |                                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |         set::{Subset}, impls::StandardOps,
[INFO] [stdout] 23 |         impls
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbsorbingSubset`
[INFO] [stdout]  --> src/quotient.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 |         monoid::{Monoid, AbsorbingSubset}, ring::{Ideal, RingOperations, Ring},
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AbsorbingSubset`
[INFO] [stdout]  --> src/structure/euclidean_ring.rs:4:70
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field};
[INFO] [stdout]   |                                                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subset`
[INFO] [stdout]  --> src/quotient.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 |     set::{Set, Subset},
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let (q,r) = a.divide(&b);
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `divisor`
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:49:23
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn remainder(self,divisor:&Self) -> Self {
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_divisor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `O0` is never used
[INFO] [stdout]  --> src/operation.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait O0<S> {
[INFO] [stdout]   |           ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `O1` is never used
[INFO] [stdout]  --> src/operation.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait O1<S> {
[INFO] [stdout]   |           ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XSquaredPlus1` is never constructed
[INFO] [stdout]    --> src/polynomial.rs:388:8
[INFO] [stdout]     |
[INFO] [stdout] 388 | struct XSquaredPlus1;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GaussianI64` is never used
[INFO] [stdout]    --> src/polynomial.rs:392:6
[INFO] [stdout]     |
[INFO] [stdout] 392 | type GaussianI64=QuotientRing<i64AdjX,PolyOps<i64,StandardOps>,Multiples<i64AdjX,PolyOps<i64,StandardOps>,XSquaredPlus1>>;
[INFO] [stdout]     |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FiniteSubset` is never used
[INFO] [stdout]   --> src/set.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait FiniteSubset<T>: Subset<T> + IntoIterator<Item = T>
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FiniteSet` is never used
[INFO] [stdout]   --> src/set.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub trait FiniteSet: Set + IntoIterator<Item = Self> {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `pow` is never used
[INFO] [stdout]   --> src/structure/group.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 7  | pub trait Group<Operation: O2<Self>>: Monoid<Operation> {
[INFO] [stdout]    |           ----- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 11 |     fn pow(a: Self, n: i64) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Submonoid` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub trait Submonoid<M,O:O2<M>>:Subset<M>+Monoid<O> where M: Monoid<O>,O:O2<Self> {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `times` is never used
[INFO] [stdout]   --> src/structure/monoid.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub trait AbsorbingSubset<M,O:O2<M>>:Subset<M> where M: Monoid<O>{
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn times(self, m:&M) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `minus` and `from_integer` are never used
[INFO] [stdout]   --> src/structure/ring.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait Ring<O>: Group<O::PLUS> + Monoid<O::TIMES>
[INFO] [stdout]    |           ---- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn minus(self, other: &Self) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn from_integer(n: u64) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `norm`, `bézout`, and `gcd` are never used
[INFO] [stdout]   --> src/structure/euclidean_ring.rs:7:8
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait EuclideanRing<O:RingOperations<Self>>:Ring<O> {
[INFO] [stdout]    |           ------------- associated items in this trait
[INFO] [stdout] 6  |     //The Euclidean norm of the ring.
[INFO] [stdout] 7  |     fn norm(&self) -> Degree;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn bézout(a:Self,b:Self)->(Self,Self){
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn gcd(a:Self,b:Self) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Outer` is never used
[INFO] [stdout]  --> src/test.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Outer<S: Inner>
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Inner` is never used
[INFO] [stdout]  --> src/test.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | trait Inner {
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Bound` is never used
[INFO] [stdout]   --> src/test.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | trait Bound {}
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `xPower` should have a snake case name
[INFO] [stdout]    --> src/polynomial.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let mut xPower = R::one();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `x_power`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.14s
[INFO] running `Command { std: "docker" "inspect" "a63d32e29cdfdb91aab250b4fff107ccd6df1deb989223e71d14c981ae043c8e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a63d32e29cdfdb91aab250b4fff107ccd6df1deb989223e71d14c981ae043c8e", kill_on_drop: false }`
[INFO] [stdout] a63d32e29cdfdb91aab250b4fff107ccd6df1deb989223e71d14c981ae043c8e
