[INFO] fetching crate numb_rs 0.0.4...
[INFO] testing numb_rs-0.0.4 against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate numb_rs 0.0.4 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate numb_rs 0.0.4
[INFO] finished tweaking crates.io crate numb_rs 0.0.4
[INFO] tweaked toml for crates.io crate numb_rs 0.0.4 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate numb_rs 0.0.4 on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 62 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.3.6 (available: v0.7.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fa4bcfcd9f7409a54c7580620fbd43a6d71c9dacb5bef891e386dd1a6f2bebd1
[INFO] running `Command { std: "docker" "start" "-a" "fa4bcfcd9f7409a54c7580620fbd43a6d71c9dacb5bef891e386dd1a6f2bebd1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fa4bcfcd9f7409a54c7580620fbd43a6d71c9dacb5bef891e386dd1a6f2bebd1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa4bcfcd9f7409a54c7580620fbd43a6d71c9dacb5bef891e386dd1a6f2bebd1", kill_on_drop: false }`
[INFO] [stdout] fa4bcfcd9f7409a54c7580620fbd43a6d71c9dacb5bef891e386dd1a6f2bebd1
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d7a5ad2ea73e1d19ce6d90d2096ee8b1bcceea3d6decb0b6219b86512a4d6f44
[INFO] running `Command { std: "docker" "start" "-a" "d7a5ad2ea73e1d19ce6d90d2096ee8b1bcceea3d6decb0b6219b86512a4d6f44", kill_on_drop: false }`
[INFO] [stderr]    Compiling numb_rs v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 |             /// a reference to the vector of the Matrix below
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 227 |             data: &self.data,
[INFO] [stdout]     |             ---------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |             /// m is a reference to the 'n' column of the Matrix
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 229 |             m: &self.n,
[INFO] [stdout]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |             /// n is a reference to the 'm' column of the Matrix
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 231 |             n: &self.m,
[INFO] [stdout]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::macros::*`
[INFO] [stdout]   --> src/lib.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub use crate::macros::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `m` and `n` are never read
[INFO] [stdout]    --> src/dense.rs:563:5
[INFO] [stdout]     |
[INFO] [stdout] 561 | pub struct DenseTranspose<'a, T: Numeric + 'a> {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 562 |     inner: &'a Dense<T>,
[INFO] [stdout] 563 |     m: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout] 564 |     n: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DenseTranspose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `m` and `n` are never read
[INFO] [stdout]    --> src/dense.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub struct DenseTransposeMut<'a, T: Numeric + 'a> {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 569 |     inner: &'a mut Dense<T>,
[INFO] [stdout] 570 |     m: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout] 571 |     n: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DenseTransposeMut` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/dense.rs:224:18
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn t_old(&self) -> MatrixT<T> {
[INFO] [stdout]     |                  ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn t_old(&self) -> MatrixT<'_, T> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.53s
[INFO] running `Command { std: "docker" "inspect" "d7a5ad2ea73e1d19ce6d90d2096ee8b1bcceea3d6decb0b6219b86512a4d6f44", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d7a5ad2ea73e1d19ce6d90d2096ee8b1bcceea3d6decb0b6219b86512a4d6f44", kill_on_drop: false }`
[INFO] [stdout] d7a5ad2ea73e1d19ce6d90d2096ee8b1bcceea3d6decb0b6219b86512a4d6f44
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 04d35ff3da9abbe8905d607b3161b6133fe96f9dce92c5c3617fe35833d55a60
[INFO] running `Command { std: "docker" "start" "-a" "04d35ff3da9abbe8905d607b3161b6133fe96f9dce92c5c3617fe35833d55a60", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling csv-core v0.1.13
[INFO] [stderr]    Compiling half v1.8.3
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 |             /// a reference to the vector of the Matrix below
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 227 |             data: &self.data,
[INFO] [stdout]     |             ---------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |             /// m is a reference to the 'n' column of the Matrix
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 229 |             m: &self.n,
[INFO] [stdout]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |             /// n is a reference to the 'm' column of the Matrix
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 231 |             n: &self.m,
[INFO] [stdout]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::macros::*`
[INFO] [stdout]   --> src/lib.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub use crate::macros::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `m` and `n` are never read
[INFO] [stdout]    --> src/dense.rs:563:5
[INFO] [stdout]     |
[INFO] [stdout] 561 | pub struct DenseTranspose<'a, T: Numeric + 'a> {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 562 |     inner: &'a Dense<T>,
[INFO] [stdout] 563 |     m: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout] 564 |     n: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DenseTranspose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `m` and `n` are never read
[INFO] [stdout]    --> src/dense.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub struct DenseTransposeMut<'a, T: Numeric + 'a> {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 569 |     inner: &'a mut Dense<T>,
[INFO] [stdout] 570 |     m: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout] 571 |     n: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DenseTransposeMut` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion-plot v0.4.5
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/dense.rs:224:18
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn t_old(&self) -> MatrixT<T> {
[INFO] [stdout]     |                  ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn t_old(&self) -> MatrixT<'_, T> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling csv v1.4.0
[INFO] [stderr]    Compiling serde_cbor v0.11.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.3.6
[INFO] [stderr]    Compiling numb_rs v0.0.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 |             /// a reference to the vector of the Matrix below
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 227 |             data: &self.data,
[INFO] [stdout]     |             ---------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |             /// m is a reference to the 'n' column of the Matrix
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 229 |             m: &self.n,
[INFO] [stdout]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/dense.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |             /// n is a reference to the 'm' column of the Matrix
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 231 |             n: &self.m,
[INFO] [stdout]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 116 |         let half = frac32!(1, 2);
[INFO] [stdout]     |                    ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 123 |         let a = frac32!(132, 203);
[INFO] [stdout]     |                 ----------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 129 |         let a = frac32!(1, 2);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 130 |         let b = frac32!(1, 4);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 132 |         assert_eq!(a + b, frac32!(6, 8));
[INFO] [stdout]     |                           ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 137 |         let a = frac32!(1, 2);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 138 |         let b = frac32!(1, 4);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 140 |         assert_eq!(a - b, frac32!(2, 8));
[INFO] [stdout]     |                           ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 145 |         let a = frac32!(1, 2);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 146 |         let b = frac32!(2, 5);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 148 |         assert_eq!(a * b, frac32!(2, 10));
[INFO] [stdout]     |                           -------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 153 |         let a = frac32!(1, 2);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 154 |         let b = frac32!(1, 4);
[INFO] [stdout]     |                 ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 156 |         assert_eq!(a / b, frac32!(4, 2));
[INFO] [stdout]     |                           ------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 161 |         let a = frac32!(157684, 511974);
[INFO] [stdout]     |                 ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/fraction.rs:25:48
[INFO] [stdout]     |
[INFO] [stdout]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stdout]     |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 162 |         assert_eq!(a.reduce(), frac32!(158, 513))
[INFO] [stdout]     |                                ----------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `frac32`
[INFO] [stdout]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::macros::*`
[INFO] [stdout]   --> src/lib.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub use crate::macros::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `m` and `n` are never read
[INFO] [stdout]    --> src/dense.rs:563:5
[INFO] [stdout]     |
[INFO] [stdout] 561 | pub struct DenseTranspose<'a, T: Numeric + 'a> {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 562 |     inner: &'a Dense<T>,
[INFO] [stdout] 563 |     m: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout] 564 |     n: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DenseTranspose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `m` and `n` are never read
[INFO] [stdout]    --> src/dense.rs:570:5
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub struct DenseTransposeMut<'a, T: Numeric + 'a> {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 569 |     inner: &'a mut Dense<T>,
[INFO] [stdout] 570 |     m: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout] 571 |     n: usize,
[INFO] [stdout]     |     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DenseTransposeMut` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/dense.rs:224:18
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn t_old(&self) -> MatrixT<T> {
[INFO] [stdout]     |                  ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn t_old(&self) -> MatrixT<'_, T> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/utilities.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         &a.assert_approx_eq(&b, 0.00005);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let _ = &a.assert_approx_eq(&b, 0.00005);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/utilities.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         &a.assert_approx_eq(&b, 0.00005);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let _ = &a.assert_approx_eq(&b, 0.00005);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 15.03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: numb_rs v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "04d35ff3da9abbe8905d607b3161b6133fe96f9dce92c5c3617fe35833d55a60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "04d35ff3da9abbe8905d607b3161b6133fe96f9dce92c5c3617fe35833d55a60", kill_on_drop: false }`
[INFO] [stdout] 04d35ff3da9abbe8905d607b3161b6133fe96f9dce92c5c3617fe35833d55a60
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 644bbeeb8ee920227525980f257e09ad02d0e52562e825c8c7794f42cc522816
[INFO] running `Command { std: "docker" "start" "-a" "644bbeeb8ee920227525980f257e09ad02d0e52562e825c8c7794f42cc522816", kill_on_drop: false }`
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/dense.rs:226:13
[INFO] [stderr]     |
[INFO] [stderr] 226 |             /// a reference to the vector of the Matrix below
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 227 |             data: &self.data,
[INFO] [stderr]     |             ---------------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `//` for a plain comment
[INFO] [stderr]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/dense.rs:228:13
[INFO] [stderr]     |
[INFO] [stderr] 228 |             /// m is a reference to the 'n' column of the Matrix
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 229 |             m: &self.n,
[INFO] [stderr]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/dense.rs:230:13
[INFO] [stderr]     |
[INFO] [stderr] 230 |             /// n is a reference to the 'm' column of the Matrix
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 231 |             n: &self.m,
[INFO] [stderr]     |             ---------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::macros::*`
[INFO] [stderr]   --> src/lib.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub use crate::macros::*;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `m` and `n` are never read
[INFO] [stderr]    --> src/dense.rs:563:5
[INFO] [stderr]     |
[INFO] [stderr] 561 | pub struct DenseTranspose<'a, T: Numeric + 'a> {
[INFO] [stderr]     |            -------------- fields in this struct
[INFO] [stderr] 562 |     inner: &'a Dense<T>,
[INFO] [stderr] 563 |     m: usize,
[INFO] [stderr]     |     ^
[INFO] [stderr] 564 |     n: usize,
[INFO] [stderr]     |     ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `DenseTranspose` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `m` and `n` are never read
[INFO] [stderr]    --> src/dense.rs:570:5
[INFO] [stderr]     |
[INFO] [stderr] 568 | pub struct DenseTransposeMut<'a, T: Numeric + 'a> {
[INFO] [stderr]     |            ----------------- fields in this struct
[INFO] [stderr] 569 |     inner: &'a mut Dense<T>,
[INFO] [stderr] 570 |     m: usize,
[INFO] [stderr]     |     ^
[INFO] [stderr] 571 |     n: usize,
[INFO] [stderr]     |     ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `DenseTransposeMut` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/dense.rs:224:18
[INFO] [stderr]     |
[INFO] [stderr] 224 |     pub fn t_old(&self) -> MatrixT<T> {
[INFO] [stderr]     |                  ^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 224 |     pub fn t_old(&self) -> MatrixT<'_, T> {
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: `numb_rs` (lib) generated 7 warnings (run `cargo fix --lib -p numb_rs` to apply 2 suggestions)
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 116 |         let half = frac32!(1, 2);
[INFO] [stderr]     |                    ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: `#[warn(semicolon_in_expressions_from_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 123 |         let a = frac32!(132, 203);
[INFO] [stderr]     |                 ----------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 129 |         let a = frac32!(1, 2);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 130 |         let b = frac32!(1, 4);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 132 |         assert_eq!(a + b, frac32!(6, 8));
[INFO] [stderr]     |                           ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 137 |         let a = frac32!(1, 2);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 138 |         let b = frac32!(1, 4);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 140 |         assert_eq!(a - b, frac32!(2, 8));
[INFO] [stderr]     |                           ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 145 |         let a = frac32!(1, 2);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 146 |         let b = frac32!(2, 5);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 148 |         assert_eq!(a * b, frac32!(2, 10));
[INFO] [stderr]     |                           -------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 153 |         let a = frac32!(1, 2);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 154 |         let b = frac32!(1, 4);
[INFO] [stderr]     |                 ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 156 |         assert_eq!(a / b, frac32!(4, 2));
[INFO] [stderr]     |                           ------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 161 |         let a = frac32!(157684, 511974);
[INFO] [stderr]     |                 ----------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trailing semicolon in macro used in expression position
[INFO] [stderr]    --> src/fraction.rs:25:48
[INFO] [stderr]     |
[INFO] [stderr]  25 |         Fraction::new($num as u32, $den as u32);
[INFO] [stderr]     |                                                ^
[INFO] [stderr] ...
[INFO] [stderr] 162 |         assert_eq!(a.reduce(), frac32!(158, 513))
[INFO] [stderr]     |                                ----------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stderr]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stderr]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `frac32`
[INFO] [stderr]     = note: this warning originates in the macro `frac32` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/utilities.rs:100:9
[INFO] [stderr]     |
[INFO] [stderr] 100 |         &a.assert_approx_eq(&b, 0.00005);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 100 |         let _ = &a.assert_approx_eq(&b, 0.00005);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/utilities.rs:109:9
[INFO] [stderr]     |
[INFO] [stderr] 109 |         &a.assert_approx_eq(&b, 0.00005);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 109 |         let _ = &a.assert_approx_eq(&b, 0.00005);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `numb_rs` (lib test) generated 25 warnings (7 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: numb_rs v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/numb_rs-6d6205eae7fad385)
[INFO] [stdout] 
[INFO] [stdout] running 45 tests
[INFO] [stdout] test core::tests::ops::matrix_mul_symmetry ... ok
[INFO] [stdout] test core::tests::sym_test ... ok
[INFO] [stdout] test dense::tests::approx_matrix_test ... ok
[INFO] [stdout] test dense::tests::col_from_vec_test ... ok
[INFO] [stdout] test dense::tests::mn_swap ... ok
[INFO] [stdout] test dense::tests::ops::matrix_mul ... ok
[INFO] [stdout] test dense::tests::macro_tests ... ok
[INFO] [stdout] test dense::tests::matrix_print ... ok
[INFO] [stdout] test dense::tests::concatenate_vec ... ok
[INFO] [stdout] test dense::tests::iters ... ok
[INFO] [stdout] test dense::tests::ops::row_add ... ok
[INFO] [stdout] test dense::tests::ops::matrix_mul_refs ... ok
[INFO] [stdout] test dense::tests::ops::row_mul ... ok
[INFO] [stdout] test dense::tests::ops::matrix_incompatibilities ... ok
[INFO] [stdout] test dense::tests::ops::test_fkn_borrows ... ok
[INFO] [stdout] test dense::tests::ops::scalar_mul ... ok
[INFO] [stdout] test dense::tests::row_swap ... ok
[INFO] [stdout] test dense::tests::swap ... ok
[INFO] [stdout] test dense::tests::test_transpose ... ok
[INFO] [stdout] test fraction::tests::display_test ... ok
[INFO] [stdout] test solver::tests::dense_solver_a ... ok
[INFO] [stdout] test fraction::tests::div_test ... ok
[INFO] [stdout] test solver::tests::dense_solver_b ... ok
[INFO] [stdout] test solver::tests::dense_solver_err ... ok
[INFO] [stdout] test dense::tests::test_raw_matrix ... ok
[INFO] [stdout] test fraction::tests::macro_test ... ok
[INFO] [stdout] test fraction::tests::mul_test ... ok
[INFO] [stdout] test fraction::tests::reduction_test ... ok
[INFO] [stdout] test fraction::tests::sub_test ... ok
[INFO] [stdout] test numerics::tests::gcd_test ... ok
[INFO] [stdout] test patterns::tests::triangle_test ... ok
[INFO] [stdout] test solver::tests::aug_solve_test ... ok
[INFO] [stdout] test dense::tests::from_vec_test ... ok
[INFO] [stdout] test dense::tests::concatenate ... ok
[INFO] [stdout] test fraction::tests::add_test ... ok
[INFO] [stdout] test patterns::tests::triangle_test_enumerator ... ok
[INFO] [stdout] test solver::tests::dense_solver_sym ... ok
[INFO] [stdout] test symmetric::tests::ops::scalar_mul ... ok
[INFO] [stdout] test solver::tests::dense_solver_vec ... ok
[INFO] [stdout] test symmetric::tests::test_print ... ok
[INFO] [stdout] test utilities::tests::approx_test ... ok
[INFO] [stdout] test utilities::tests::approx_vec ... ok
[INFO] [stdout] test symmetric::tests::test_convert ... ok
[INFO] [stdout] test symmetric::tests::ops::dense_symm_mul ... ok
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-9bebcb843269164d)
[INFO] [stdout] test utilities::tests::approx_panic - should panic ... ok
[INFO] [stderr]    Doc-tests numb_rs
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 45 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test linear_algebra ... ok
[INFO] [stdout] test general_creation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/dense.rs - dense::Dense (line 34) ... ok
[INFO] [stdout] test src/macros.rs - macros::mat (line 4) ... ok
[INFO] [stdout] test src/dense.rs - dense::Dense (line 20) ... ok
[INFO] [stdout] test src/macros.rs - macros::symmat (line 75) ... ok
[INFO] [stdout] test src/macros.rs - macros::mat (line 19) ... ok
[INFO] [stdout] test src/macros.rs - macros::mat (line 23) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.45s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "644bbeeb8ee920227525980f257e09ad02d0e52562e825c8c7794f42cc522816", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "644bbeeb8ee920227525980f257e09ad02d0e52562e825c8c7794f42cc522816", kill_on_drop: false }`
[INFO] [stdout] 644bbeeb8ee920227525980f257e09ad02d0e52562e825c8c7794f42cc522816
