[INFO] cloning repository https://github.com/Mitchelldscott/control-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Mitchelldscott/control-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMitchelldscott%2Fcontrol-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMitchelldscott%2Fcontrol-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9b6b9bd3f0470e66532d5ccb961444c88dcad3e3 [INFO] building Mitchelldscott/control-rs/9b6b9bd3f0470e66532d5ccb961444c88dcad3e3 against master#44f415c1d617ebc7b931a243b7b321ef8a6ca47c for pr-142134-abi-ast-error [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMitchelldscott%2Fcontrol-rs" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Mitchelldscott/control-rs on toolchain 44f415c1d617ebc7b931a243b7b321ef8a6ca47c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Mitchelldscott/control-rs [INFO] finished tweaking git repo https://github.com/Mitchelldscott/control-rs [INFO] tweaked toml for git repo https://github.com/Mitchelldscott/control-rs written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Mitchelldscott/control-rs 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" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded plotly_derive v0.10.0 [INFO] [stderr] Downloaded rinja_parser v0.3.5 [INFO] [stderr] Downloaded rinja_derive v0.3.5 [INFO] [stderr] Downloaded rinja v0.3.5 [INFO] [stderr] Downloaded plotly v0.10.0 [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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d451c943f5ee70cec9035c192aace7c4ac92445c12acd8b731c2801ff196b666 [INFO] running `Command { std: "docker" "start" "-a" "d451c943f5ee70cec9035c192aace7c4ac92445c12acd8b731c2801ff196b666", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d451c943f5ee70cec9035c192aace7c4ac92445c12acd8b731c2801ff196b666", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d451c943f5ee70cec9035c192aace7c4ac92445c12acd8b731c2801ff196b666", kill_on_drop: false }` [INFO] [stdout] d451c943f5ee70cec9035c192aace7c4ac92445c12acd8b731c2801ff196b666 [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 34f5f415df09b4e5d070a97402a298734712d881c52a3b03e17043b9d7617f05 [INFO] running `Command { std: "docker" "start" "-a" "34f5f415df09b4e5d070a97402a298734712d881c52a3b03e17043b9d7617f05", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.16 [INFO] [stderr] Compiling libm v0.2.11 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling libc v0.2.169 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling serde_json v1.0.138 [INFO] [stderr] Compiling bytemuck v1.21.0 [INFO] [stderr] Compiling typeid v1.0.2 [INFO] [stderr] Compiling mime v0.3.17 [INFO] [stderr] Compiling ryu v1.0.19 [INFO] [stderr] Compiling itoa v1.0.14 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling safe_arch v0.7.4 [INFO] [stderr] Compiling percent-encoding v2.3.1 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling once_cell v1.20.3 [INFO] [stderr] Compiling dyn-clone v1.0.18 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling wide v0.7.32 [INFO] [stderr] Compiling humansize v2.1.3 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling syn v2.0.98 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling nalgebra-macros v0.2.2 [INFO] [stderr] Compiling serde_repr v0.1.19 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling serde_with_macros v3.12.0 [INFO] [stderr] Compiling plotly_derive v0.10.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling basic-toml v0.1.9 [INFO] [stderr] Compiling rinja_parser v0.3.5 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling serde_with v3.12.0 [INFO] [stderr] Compiling erased-serde v0.4.5 [INFO] [stderr] Compiling simba v0.9.0 [INFO] [stderr] Compiling rinja_derive v0.3.5 [INFO] [stderr] Compiling rinja v0.3.5 [INFO] [stderr] Compiling plotly v0.10.0 [INFO] [stderr] Compiling nalgebra v0.33.2 [INFO] [stderr] Compiling control-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `feedback` is never used [INFO] [stdout] --> src/math/systems.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn feedback(sys1: &G, sys2: &H, sign_in: T, sign_feedback: T) -> CL [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:21:23 [INFO] [stdout] | [INFO] [stdout] 21 | #![warn(missing_docs, unused)] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(dead_code)]` implied by `#[warn(unused)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/polynomial/mod.rs:231:17 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn iter(&self) -> slice::Iter { [INFO] [stdout] | ^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 231 | pub fn iter(&self) -> slice::Iter<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/polynomial/mod.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | pub fn iter_mut(&mut self) -> slice::IterMut { [INFO] [stdout] | ^^^^^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 236 | pub fn iter_mut(&mut self) -> slice::IterMut<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.54s [INFO] running `Command { std: "docker" "inspect" "34f5f415df09b4e5d070a97402a298734712d881c52a3b03e17043b9d7617f05", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "34f5f415df09b4e5d070a97402a298734712d881c52a3b03e17043b9d7617f05", kill_on_drop: false }` [INFO] [stdout] 34f5f415df09b4e5d070a97402a298734712d881c52a3b03e17043b9d7617f05 [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1c03741eb9f762c6418aa4b143f1e03e3797889b1d0be774db88f3171b041eed [INFO] running `Command { std: "docker" "start" "-a" "1c03741eb9f762c6418aa4b143f1e03e3797889b1d0be774db88f3171b041eed", kill_on_drop: false }` [INFO] [stderr] Compiling csv-core v0.1.12 [INFO] [stderr] Compiling rand_distr v0.4.3 [INFO] [stdout] warning: function `feedback` is never used [INFO] [stdout] --> src/math/systems.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn feedback(sys1: &G, sys2: &H, sign_in: T, sign_feedback: T) -> CL [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:21:23 [INFO] [stdout] | [INFO] [stdout] 21 | #![warn(missing_docs, unused)] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(dead_code)]` implied by `#[warn(unused)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/polynomial/mod.rs:231:17 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn iter(&self) -> slice::Iter { [INFO] [stdout] | ^^^^^ -------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 231 | pub fn iter(&self) -> slice::Iter<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/polynomial/mod.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | pub fn iter_mut(&mut self) -> slice::IterMut { [INFO] [stdout] | ^^^^^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 236 | pub fn iter_mut(&mut self) -> slice::IterMut<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling control-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `any::type_name` and `fmt` [INFO] [stdout] --> src/polynomial/basic_tests.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | use core::{any::type_name, fmt}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:21:23 [INFO] [stdout] | [INFO] [stdout] 21 | #![warn(missing_docs, unused)] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(unused_imports)]` implied by `#[warn(unused)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `One` and `Zero` [INFO] [stdout] --> src/polynomial/basic_tests.rs:28:18 [INFO] [stdout] | [INFO] [stdout] 28 | use num_traits::{One, Zero}; [INFO] [stdout] | ^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot add `{integer}` to `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:61:30 [INFO] [stdout] | [INFO] [stdout] 61 | assert_eq!(quadratic + 1, Polynomial::from_data([2, 1, 1])); [INFO] [stdout] | --------- ^ - {integer} [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `std::ops::Add<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `std::ops::Add<{integer}>` [INFO] [stdout] note: the trait `std::ops::Add` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:78:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot add `polynomial::Polynomial` to `{integer}` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:66:22 [INFO] [stdout] | [INFO] [stdout] 66 | assert_eq!(1 + quadratic, Polynomial::from_data([2, 1, 1])); [INFO] [stdout] | ^ no implementation for `{integer} + polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Add>` is not implemented for `{integer}` [INFO] [stdout] = help: the following other types implement trait `std::ops::Add`: [INFO] [stdout] `&f128` implements `std::ops::Add` [INFO] [stdout] `&f128` implements `std::ops::Add` [INFO] [stdout] `&f16` implements `std::ops::Add` [INFO] [stdout] `&f16` implements `std::ops::Add` [INFO] [stdout] `&f32` implements `std::ops::Add<&nalgebra::Complex>` [INFO] [stdout] `&f32` implements `std::ops::Add` [INFO] [stdout] `&f32` implements `std::ops::Add>` [INFO] [stdout] `&f32` implements `std::ops::Add` [INFO] [stdout] and 160 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `+=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | quadratic += 1; [INFO] [stdout] | ---------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `+=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `AddAssign<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `AddAssign<{integer}>` [INFO] [stdout] note: the trait `AddAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:741:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot add `{integer}` to `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:77:26 [INFO] [stdout] | [INFO] [stdout] 77 | assert_eq!(large + 1, Polynomial::from_data([2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])); [INFO] [stdout] | ----- ^ - {integer} [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `std::ops::Add<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `std::ops::Add<{integer}>` [INFO] [stdout] note: the trait `std::ops::Add` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:78:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot add `polynomial::Polynomial` to `{integer}` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:82:22 [INFO] [stdout] | [INFO] [stdout] 82 | assert_eq!(1 + large, Polynomial::from_data([2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])); [INFO] [stdout] | ^ no implementation for `{integer} + polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Add>` is not implemented for `{integer}` [INFO] [stdout] = help: the following other types implement trait `std::ops::Add`: [INFO] [stdout] `&f128` implements `std::ops::Add` [INFO] [stdout] `&f128` implements `std::ops::Add` [INFO] [stdout] `&f16` implements `std::ops::Add` [INFO] [stdout] `&f16` implements `std::ops::Add` [INFO] [stdout] `&f32` implements `std::ops::Add<&nalgebra::Complex>` [INFO] [stdout] `&f32` implements `std::ops::Add` [INFO] [stdout] `&f32` implements `std::ops::Add>` [INFO] [stdout] `&f32` implements `std::ops::Add` [INFO] [stdout] and 160 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `+=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | large += 1; [INFO] [stdout] | -----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `+=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `AddAssign<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `AddAssign<{integer}>` [INFO] [stdout] note: the trait `AddAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:741:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot subtract `{integer}` from `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:145:30 [INFO] [stdout] | [INFO] [stdout] 145 | assert_eq!(quadratic - 1, Polynomial::from_data([0, 1, 1])); [INFO] [stdout] | --------- ^ - {integer} [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `Sub<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `Sub<{integer}>` [INFO] [stdout] note: the trait `Sub` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:188:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot subtract `polynomial::Polynomial` from `{integer}` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:150:22 [INFO] [stdout] | [INFO] [stdout] 150 | assert_eq!(1 - quadratic, Polynomial::from_data([0, -1, -1])); [INFO] [stdout] | ^ no implementation for `{integer} - polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sub>` is not implemented for `{integer}` [INFO] [stdout] = help: the following other types implement trait `Sub`: [INFO] [stdout] `&f128` implements `Sub` [INFO] [stdout] `&f128` implements `Sub` [INFO] [stdout] `&f16` implements `Sub` [INFO] [stdout] `&f16` implements `Sub` [INFO] [stdout] `&f32` implements `Sub<&nalgebra::Complex>` [INFO] [stdout] `&f32` implements `Sub` [INFO] [stdout] `&f32` implements `Sub>` [INFO] [stdout] `&f32` implements `Sub` [INFO] [stdout] and 152 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `-=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | quadratic -= 1; [INFO] [stdout] | ---------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `-=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `SubAssign<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `SubAssign<{integer}>` [INFO] [stdout] note: the trait `SubAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:808:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot subtract `{integer}` from `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:161:26 [INFO] [stdout] | [INFO] [stdout] 161 | assert_eq!(large - 1, Polynomial::from_data([0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])); [INFO] [stdout] | ----- ^ - {integer} [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `Sub<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `Sub<{integer}>` [INFO] [stdout] note: the trait `Sub` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:188:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot subtract `polynomial::Polynomial` from `{integer}` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:166:22 [INFO] [stdout] | [INFO] [stdout] 166 | assert_eq!(1 - large, Polynomial::from_data([0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1])); [INFO] [stdout] | ^ no implementation for `{integer} - polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sub>` is not implemented for `{integer}` [INFO] [stdout] = help: the following other types implement trait `Sub`: [INFO] [stdout] `&f128` implements `Sub` [INFO] [stdout] `&f128` implements `Sub` [INFO] [stdout] `&f16` implements `Sub` [INFO] [stdout] `&f16` implements `Sub` [INFO] [stdout] `&f32` implements `Sub<&nalgebra::Complex>` [INFO] [stdout] `&f32` implements `Sub` [INFO] [stdout] `&f32` implements `Sub>` [INFO] [stdout] `&f32` implements `Sub` [INFO] [stdout] and 152 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `-=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | large -= 1; [INFO] [stdout] | -----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `-=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `SubAssign<{integer}>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `SubAssign<{integer}>` [INFO] [stdout] note: the trait `SubAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:808:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0271]: type mismatch resolving `>>::Output == Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:342:28 [INFO] [stdout] | [INFO] [stdout] 342 | assert!(!(constant + empty).is_empty()); [INFO] [stdout] | ^ type mismatch resolving `>>::Output == Polynomial` [INFO] [stdout] | [INFO] [stdout] note: expected this to be `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:957:31 [INFO] [stdout] | [INFO] [stdout] 957 | type Output = Polynomial<$scalar, 1>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 980 | impl_base_case_left_scalar_arithmatic!(i8, u8, i16, u16, i32, u32, isize, usize, f32, f64); [INFO] [stdout] | ------------------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] = note: expected struct `polynomial::Polynomial<_, 0>` [INFO] [stdout] found struct `polynomial::Polynomial<_, 1>` [INFO] [stdout] note: required for `polynomial::Polynomial` to implement `std::ops::Add>` [INFO] [stdout] --> src/polynomial/constant.rs:168:32 [INFO] [stdout] | [INFO] [stdout] 168 | impl Add> for Constant [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 169 | where [INFO] [stdout] 170 | T: Add, Output = Polynomial>, [INFO] [stdout] | ------------------------- unsatisfied trait bound introduced here [INFO] [stdout] = note: this error originates in the macro `impl_base_case_left_scalar_arithmatic` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot add `polynomial::Polynomial` to `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:368:25 [INFO] [stdout] | [INFO] [stdout] 368 | assert_eq!(line + constant, Polynomial::from_data([0, 0])); [INFO] [stdout] | ^ no implementation for `polynomial::Polynomial + polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Add>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `std::ops::Add`: [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add>` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add>` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add>` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Add` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot add-assign `polynomial::Polynomial` to `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:380:14 [INFO] [stdout] | [INFO] [stdout] 380 | line += constant; [INFO] [stdout] | ^^ no implementation for `polynomial::Polynomial += polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `AddAssign>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `AddAssign`: [INFO] [stdout] `polynomial::Polynomial` implements `AddAssign` [INFO] [stdout] `polynomial::Polynomial` implements `AddAssign>` [INFO] [stdout] `polynomial::Polynomial` implements `AddAssign` [INFO] [stdout] `polynomial::Polynomial` implements `AddAssign` [INFO] [stdout] `polynomial::Polynomial` implements `AddAssign>` [INFO] [stdout] `polynomial::Polynomial` implements `AddAssign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot add `polynomial::Polynomial` to `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:387:30 [INFO] [stdout] | [INFO] [stdout] 387 | assert_eq!(quadratic + constant, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | --------- ^ -------- polynomial::Polynomial [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `std::ops::Add>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `std::ops::Add>` [INFO] [stdout] note: the trait `std::ops::Add` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:78:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot add `polynomial::Polynomial` to `u32` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:393:29 [INFO] [stdout] | [INFO] [stdout] 393 | assert_eq!(constant + quadratic, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^ no implementation for `u32 + polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Add>` is not implemented for `u32` [INFO] [stdout] = help: the following other types implement trait `std::ops::Add`: [INFO] [stdout] `&u32` implements `std::ops::Add<&nalgebra::Complex>` [INFO] [stdout] `&u32` implements `std::ops::Add>` [INFO] [stdout] `&u32` implements `std::ops::Add` [INFO] [stdout] `&u32` implements `std::ops::Add` [INFO] [stdout] `u32` implements `std::ops::Add<&nalgebra::Complex>` [INFO] [stdout] `u32` implements `std::ops::Add<&u32>` [INFO] [stdout] `u32` implements `std::ops::Add>` [INFO] [stdout] `u32` implements `std::ops::Add>` [INFO] [stdout] and 4 others [INFO] [stdout] note: required for `polynomial::Polynomial` to implement `std::ops::Add>` [INFO] [stdout] --> src/polynomial/constant.rs:168:32 [INFO] [stdout] | [INFO] [stdout] 168 | impl Add> for Constant [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 169 | where [INFO] [stdout] 170 | T: Add, Output = Polynomial>, [INFO] [stdout] | ------------------------------------------------ unsatisfied trait bound introduced here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `+=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:399:9 [INFO] [stdout] | [INFO] [stdout] 399 | quadratic += constant; [INFO] [stdout] | ---------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `+=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `AddAssign>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `AddAssign>` [INFO] [stdout] note: the trait `AddAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:741:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot add `polynomial::Polynomial` to `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:406:26 [INFO] [stdout] | [INFO] [stdout] 406 | assert_eq!(large + constant, Polynomial::from_iterator([])); [INFO] [stdout] | ----- ^ -------- polynomial::Polynomial [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `std::ops::Add>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `std::ops::Add>` [INFO] [stdout] note: the trait `std::ops::Add` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:78:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot add `polynomial::Polynomial` to `u32` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:412:29 [INFO] [stdout] | [INFO] [stdout] 412 | assert_eq!(constant + large, Polynomial::from_iterator([])); [INFO] [stdout] | ^ no implementation for `u32 + polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Add>` is not implemented for `u32` [INFO] [stdout] = help: the following other types implement trait `std::ops::Add`: [INFO] [stdout] `&u32` implements `std::ops::Add<&nalgebra::Complex>` [INFO] [stdout] `&u32` implements `std::ops::Add>` [INFO] [stdout] `&u32` implements `std::ops::Add` [INFO] [stdout] `&u32` implements `std::ops::Add` [INFO] [stdout] `u32` implements `std::ops::Add<&nalgebra::Complex>` [INFO] [stdout] `u32` implements `std::ops::Add<&u32>` [INFO] [stdout] `u32` implements `std::ops::Add>` [INFO] [stdout] `u32` implements `std::ops::Add>` [INFO] [stdout] and 4 others [INFO] [stdout] note: required for `polynomial::Polynomial` to implement `std::ops::Add>` [INFO] [stdout] --> src/polynomial/constant.rs:168:32 [INFO] [stdout] | [INFO] [stdout] 168 | impl Add> for Constant [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 169 | where [INFO] [stdout] 170 | T: Add, Output = Polynomial>, [INFO] [stdout] | ------------------------------------------------ unsatisfied trait bound introduced here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `+=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:418:9 [INFO] [stdout] | [INFO] [stdout] 418 | large += constant; [INFO] [stdout] | -----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `+=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `AddAssign>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `AddAssign>` [INFO] [stdout] note: the trait `AddAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:741:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:435:30 [INFO] [stdout] | [INFO] [stdout] 435 | assert!(!(constant - empty).is_empty()); [INFO] [stdout] | ^^^^^ expected `u8`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `u8` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:448:33 [INFO] [stdout] | [INFO] [stdout] 448 | assert_eq!(constant_a - constant_b, Polynomial::from_data([4])); [INFO] [stdout] | ^^^^^^^^^^ expected `u16`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `u16` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot subtract `polynomial::Polynomial` from `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:461:25 [INFO] [stdout] | [INFO] [stdout] 461 | assert_eq!(line - constant, Polynomial::from_data([0, 0])); [INFO] [stdout] | ^ no implementation for `polynomial::Polynomial - polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sub>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `Sub`: [INFO] [stdout] `polynomial::Polynomial` implements `Sub` [INFO] [stdout] `polynomial::Polynomial` implements `Sub>` [INFO] [stdout] `polynomial::Polynomial` implements `Sub` [INFO] [stdout] `polynomial::Polynomial` implements `Sub>` [INFO] [stdout] `polynomial::Polynomial` implements `Sub` [INFO] [stdout] `polynomial::Polynomial` implements `Sub>` [INFO] [stdout] `polynomial::Polynomial` implements `Sub` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot subtract-assign `polynomial::Polynomial` from `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:473:14 [INFO] [stdout] | [INFO] [stdout] 473 | line -= constant; [INFO] [stdout] | ^^ no implementation for `polynomial::Polynomial -= polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `SubAssign>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `SubAssign`: [INFO] [stdout] `polynomial::Polynomial` implements `SubAssign` [INFO] [stdout] `polynomial::Polynomial` implements `SubAssign>` [INFO] [stdout] `polynomial::Polynomial` implements `SubAssign` [INFO] [stdout] `polynomial::Polynomial` implements `SubAssign` [INFO] [stdout] `polynomial::Polynomial` implements `SubAssign>` [INFO] [stdout] `polynomial::Polynomial` implements `SubAssign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot subtract `polynomial::Polynomial` from `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:480:30 [INFO] [stdout] | [INFO] [stdout] 480 | assert_eq!(quadratic - constant, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | --------- ^ -------- polynomial::Polynomial [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `Sub>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `Sub>` [INFO] [stdout] note: the trait `Sub` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:188:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:486:31 [INFO] [stdout] | [INFO] [stdout] 486 | assert_eq!(constant - quadratic, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^^^^^^^^^ expected `u32`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `u32` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:486:42 [INFO] [stdout] | [INFO] [stdout] 486 | assert_eq!(constant - quadratic, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `1`, found `3` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `polynomial::Polynomial` [INFO] [stdout] found struct `polynomial::Polynomial<{integer}, 3>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `-=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:492:9 [INFO] [stdout] | [INFO] [stdout] 492 | quadratic -= constant; [INFO] [stdout] | ---------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `-=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `SubAssign>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `SubAssign>` [INFO] [stdout] note: the trait `SubAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:808:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: cannot subtract `polynomial::Polynomial` from `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:499:26 [INFO] [stdout] | [INFO] [stdout] 499 | assert_eq!(large - constant, Polynomial::from_iterator([])); [INFO] [stdout] | ----- ^ -------- polynomial::Polynomial [INFO] [stdout] | | [INFO] [stdout] | polynomial::Polynomial [INFO] [stdout] | [INFO] [stdout] note: an implementation of `Sub>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `Sub>` [INFO] [stdout] note: the trait `Sub` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:188:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:505:31 [INFO] [stdout] | [INFO] [stdout] 505 | assert_eq!(constant - large, Polynomial::from_iterator([])); [INFO] [stdout] | ^^^^^ expected `u32`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `u32` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0368]: binary assignment operation `-=` cannot be applied to type `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:511:9 [INFO] [stdout] | [INFO] [stdout] 511 | large -= constant; [INFO] [stdout] | -----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | cannot use `-=` on type `polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] note: an implementation of `SubAssign>` might be missing for `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/mod.rs:156:1 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Polynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `SubAssign>` [INFO] [stdout] note: the trait `SubAssign` must be implemented [INFO] [stdout] --> /rustc/44f415c1d617ebc7b931a243b7b321ef8a6ca47c/library/core/src/ops/arith.rs:808:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot multiply `polynomial::Polynomial` by `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:554:25 [INFO] [stdout] | [INFO] [stdout] 554 | assert_eq!(line * constant, Polynomial::from_data([0, 0])); [INFO] [stdout] | ^ no implementation for `polynomial::Polynomial * polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Mul>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `std::ops::Mul`: [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul>` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:566:17 [INFO] [stdout] | [INFO] [stdout] 566 | line *= constant; [INFO] [stdout] | ^^^^^^^^ expected `f64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `f64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:573:32 [INFO] [stdout] | [INFO] [stdout] 573 | assert_eq!(quadratic * constant, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^^^^^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:585:22 [INFO] [stdout] | [INFO] [stdout] 585 | quadratic *= constant; [INFO] [stdout] | ^^^^^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:592:28 [INFO] [stdout] | [INFO] [stdout] 592 | assert_eq!(large * constant, Polynomial::from_iterator([])); [INFO] [stdout] | ^^^^^^^^ expected `i32`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i32` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:604:18 [INFO] [stdout] | [INFO] [stdout] 604 | large *= constant; [INFO] [stdout] | ^^^^^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:647:27 [INFO] [stdout] | [INFO] [stdout] 647 | assert_eq!(line / constant, Polynomial::from_data([0, 0])); [INFO] [stdout] | ^^^^^^^^ expected `usize`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `usize` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:659:17 [INFO] [stdout] | [INFO] [stdout] 659 | line /= constant; [INFO] [stdout] | ^^^^^^^^ expected `f64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `f64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:666:32 [INFO] [stdout] | [INFO] [stdout] 666 | assert_eq!(quadratic / constant, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^^^^^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:678:22 [INFO] [stdout] | [INFO] [stdout] 678 | quadratic /= constant; [INFO] [stdout] | ^^^^^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:685:28 [INFO] [stdout] | [INFO] [stdout] 685 | assert_eq!(large / constant, Polynomial::from_iterator([])); [INFO] [stdout] | ^^^^^^^^ expected `i32`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i32` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:697:18 [INFO] [stdout] | [INFO] [stdout] 697 | large /= constant; [INFO] [stdout] | ^^^^^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:759:32 [INFO] [stdout] | [INFO] [stdout] 759 | assert_eq!(quadratic * line, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot multiply `polynomial::Polynomial` by `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:765:25 [INFO] [stdout] | [INFO] [stdout] 765 | assert_eq!(line * quadratic, Polynomial::from_data([0, 0, 0])); [INFO] [stdout] | ^ no implementation for `polynomial::Polynomial * polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Mul>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `std::ops::Mul`: [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul>` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:771:22 [INFO] [stdout] | [INFO] [stdout] 771 | quadratic *= line; [INFO] [stdout] | ^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:778:28 [INFO] [stdout] | [INFO] [stdout] 778 | assert_eq!(large * line, Polynomial::from_iterator([])); [INFO] [stdout] | ^^^^ expected `i32`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i32` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot multiply `polynomial::Polynomial` by `polynomial::Polynomial` [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:784:25 [INFO] [stdout] | [INFO] [stdout] 784 | assert_eq!(line * large, Polynomial::from_iterator([])); [INFO] [stdout] | ^ no implementation for `polynomial::Polynomial * polynomial::Polynomial` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::ops::Mul>` is not implemented for `polynomial::Polynomial` [INFO] [stdout] = help: the following other types implement trait `std::ops::Mul`: [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul>` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul` [INFO] [stdout] `polynomial::Polynomial` implements `std::ops::Mul` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/polynomial/arithmatic_tests.rs:790:18 [INFO] [stdout] | [INFO] [stdout] 790 | large *= line; [INFO] [stdout] | ^^^^ expected `i64`, found `Polynomial` [INFO] [stdout] | [INFO] [stdout] = note: expected type `i64` [INFO] [stdout] found struct `polynomial::Polynomial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0271, E0277, E0308, E0368, E0369. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0271`. [INFO] [stdout] [INFO] [stderr] error: could not compile `control-rs` (lib test) due to 50 previous errors; 2 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "1c03741eb9f762c6418aa4b143f1e03e3797889b1d0be774db88f3171b041eed", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1c03741eb9f762c6418aa4b143f1e03e3797889b1d0be774db88f3171b041eed", kill_on_drop: false }` [INFO] [stdout] 1c03741eb9f762c6418aa4b143f1e03e3797889b1d0be774db88f3171b041eed