[INFO] cloning repository https://github.com/y-kitamu/numeric
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/y-kitamu/numeric" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fy-kitamu%2Fnumeric", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fy-kitamu%2Fnumeric'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e2f6f768d5ca55d0e0acc19c3bc9743ff866b65f
[INFO] checking y-kitamu/numeric against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fy-kitamu%2Fnumeric" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/y-kitamu/numeric
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/y-kitamu/numeric
[INFO] tweaked toml for git repo https://github.com/y-kitamu/numeric written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/y-kitamu/numeric on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/y-kitamu/numeric 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9
[INFO] running `Command { std: "docker" "start" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling syn v1.0.77
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling num-bigint v0.4.2
[INFO] [stderr]    Compiling libc v0.2.107
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.4.0
[INFO] [stderr]    Compiling unicode-segmentation v1.8.0
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]    Compiling anyhow v1.0.44
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]     Checking textwrap v0.14.2
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling unicase v2.6.0
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking os_str_bytes v4.2.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking num-integer v0.1.44
[INFO] [stderr]     Checking num-complex v0.4.0
[INFO] [stderr]     Checking num v0.4.0
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]    Compiling clap_derive v3.0.0-beta.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.30
[INFO] [stderr]     Checking thiserror v1.0.30
[INFO] [stderr]     Checking clap v3.0.0-beta.5
[INFO] [stderr]     Checking numerics v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated associated function `core::num::<impl usize>::max_value`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linalg/sparse.rs:127:36
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let mut done = vec![usize::max_value(); m];
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::num::<impl usize>::max_value`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linalg/sparse.rs:142:36
[INFO] [stdout]     |
[INFO] [stdout] 142 |         let mut done = vec![usize::max_value(); m];
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::num::<impl usize>::max_value`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linalg/sparse.rs:127:36
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let mut done = vec![usize::max_value(); m];
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::num::<impl usize>::max_value`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linalg/sparse.rs:142:36
[INFO] [stdout]     |
[INFO] [stdout] 142 |         let mut done = vec![usize::max_value(); m];
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SVD` is never constructed
[INFO] [stdout]  --> src/linalg/svd.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct SVD<T>
[INFO] [stdout]   |        ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/linalg/svd.rs:24:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | / impl<T> SVD<T>
[INFO] [stdout]  21 | | where
[INFO] [stdout]  22 | |     T: MatLinAlgBound,
[INFO] [stdout]     | |______________________- associated items in this implementation
[INFO] [stdout]  23 |   {
[INFO] [stdout]  24 |       pub fn new(a: Matrix<T>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  48 |       fn decompose(&mut self, mut a: Matrix<T>) {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |       fn reorder(&mut self) {}
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 204 |
[INFO] [stdout] 205 |       pub fn solve(&self, b: &[T], x: &mut [T]) -> Result<()> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |       pub fn solve_mat(&self, b: &Matrix<T>, x: &mut Matrix<T>) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |       pub fn rank(&self) -> usize {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |       pub fn nullity(&self) -> usize {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |       pub fn range(&self) -> Matrix<T> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |       pub fn nullspace(&self) -> Matrix<T> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/lu_decomposition.rs:109:20
[INFO] [stdout]     |
[INFO] [stdout] 109 |             x[i] = sum.into();
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 109 -             x[i] = sum.into();
[INFO] [stdout] 109 +             x[i] = sum;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 109 -             x[i] = sum.into();
[INFO] [stdout] 109 +             x[i] = <T as Into<_>>::into(sum);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:131:32
[INFO] [stdout]     |
[INFO] [stdout] 131 |                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square()).into();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 131 -                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square()).into();
[INFO] [stdout] 131 +                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 131 -                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square()).into();
[INFO] [stdout] 131 +                     let norm = <T as Into<_>>::into((a[i][i + 1].square() + a[i + 1][i + 1].square()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:135:25
[INFO] [stdout]     |
[INFO] [stdout] 135 |                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])).into();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 135 -                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])).into();
[INFO] [stdout] 135 +                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1]));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 135 -                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])).into();
[INFO] [stdout] 135 +                         <T as Into<_>>::into((T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()).into();
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 148 -             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()).into();
[INFO] [stdout] 148 +             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 148 -             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()).into();
[INFO] [stdout] 148 +             let c11: T = <T as Into<_>>::into((a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:165:21
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])).into();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 165 -                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])).into();
[INFO] [stdout] 165 +                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1]));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 165 -                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])).into();
[INFO] [stdout] 165 +                     <T as Into<_>>::into((T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `f32`
[INFO] [stdout]   --> src/linalg/tridiagonal.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 |     u[0] = (r[0].to_f32().unwrap() / bet).into();
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 18 -     u[0] = (r[0].to_f32().unwrap() / bet).into();
[INFO] [stdout] 18 +     u[0] = (r[0].to_f32().unwrap() / bet);
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 18 -     u[0] = (r[0].to_f32().unwrap() / bet).into();
[INFO] [stdout] 18 +     u[0] = <f32 as Into<_>>::into((r[0].to_f32().unwrap() / bet));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]   --> src/linalg/vander.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |             b = (c[j] + T::from(xx * b)).into();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 23 -             b = (c[j] + T::from(xx * b)).into();
[INFO] [stdout] 23 +             b = (c[j] + T::from(xx * b));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 23 -             b = (c[j] + T::from(xx * b)).into();
[INFO] [stdout] 23 +             b = <T as Into<_>>::into((c[j] + T::from(xx * b)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]   --> src/linalg/vander.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |             t = (T::from(xx * t) + b).into();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 25 -             t = (T::from(xx * t) + b).into();
[INFO] [stdout] 25 +             t = (T::from(xx * t) + b);
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 25 -             t = (T::from(xx * t) + b).into();
[INFO] [stdout] 25 +             t = <T as Into<_>>::into((T::from(xx * t) + b));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/linalg/svd.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |             self.solve(&b.get_col(j), &mut tmp);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 237 |             let _unused = self.solve(&b.get_col(j), &mut tmp);
[INFO] [stdout]     |             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `numerics` (lib) due to 8 previous errors; 5 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: struct `SVD` is never constructed
[INFO] [stdout]  --> src/linalg/svd.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct SVD<T>
[INFO] [stdout]   |        ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/linalg/svd.rs:24:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | / impl<T> SVD<T>
[INFO] [stdout]  21 | | where
[INFO] [stdout]  22 | |     T: MatLinAlgBound,
[INFO] [stdout]     | |______________________- associated items in this implementation
[INFO] [stdout]  23 |   {
[INFO] [stdout]  24 |       pub fn new(a: Matrix<T>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  48 |       fn decompose(&mut self, mut a: Matrix<T>) {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |       fn reorder(&mut self) {}
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 204 |
[INFO] [stdout] 205 |       pub fn solve(&self, b: &[T], x: &mut [T]) -> Result<()> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |       pub fn solve_mat(&self, b: &Matrix<T>, x: &mut Matrix<T>) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |       pub fn rank(&self) -> usize {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |       pub fn nullity(&self) -> usize {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |       pub fn range(&self) -> Matrix<T> {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |       pub fn nullspace(&self) -> Matrix<T> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_svd` is never used
[INFO] [stdout]    --> src/linalg/svd.rs:301:8
[INFO] [stdout]     |
[INFO] [stdout] 301 |     fn test_svd() {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/lu_decomposition.rs:109:20
[INFO] [stdout]     |
[INFO] [stdout] 109 |             x[i] = sum.into();
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 109 -             x[i] = sum.into();
[INFO] [stdout] 109 +             x[i] = sum;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 109 -             x[i] = sum.into();
[INFO] [stdout] 109 +             x[i] = <T as Into<_>>::into(sum);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:131:32
[INFO] [stdout]     |
[INFO] [stdout] 131 |                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square()).into();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 131 -                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square()).into();
[INFO] [stdout] 131 +                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 131 -                     let norm = (a[i][i + 1].square() + a[i + 1][i + 1].square()).into();
[INFO] [stdout] 131 +                     let norm = <T as Into<_>>::into((a[i][i + 1].square() + a[i + 1][i + 1].square()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:135:25
[INFO] [stdout]     |
[INFO] [stdout] 135 |                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])).into();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 135 -                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])).into();
[INFO] [stdout] 135 +                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1]));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 135 -                         (T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])).into();
[INFO] [stdout] 135 +                         <T as Into<_>>::into((T::from(nsin * a[i][i + 1]) + T::from(cos * a[i + 1][i + 1])));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()).into();
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 148 -             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()).into();
[INFO] [stdout] 148 +             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square());
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 148 -             let c11: T = (a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()).into();
[INFO] [stdout] 148 +             let c11: T = <T as Into<_>>::into((a[idx][idx + 1].square() + a[idx + 1][idx + 1].square()));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]    --> src/linalg/svd.rs:165:21
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])).into();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 165 -                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])).into();
[INFO] [stdout] 165 +                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1]));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 165 -                     (T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])).into();
[INFO] [stdout] 165 +                     <T as Into<_>>::into((T::from(sin * mat[idx][idx]) + T::from(cos * mat[idx][idx + 1])));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `f32`
[INFO] [stdout]   --> src/linalg/tridiagonal.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 |     u[0] = (r[0].to_f32().unwrap() / bet).into();
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 18 -     u[0] = (r[0].to_f32().unwrap() / bet).into();
[INFO] [stdout] 18 +     u[0] = (r[0].to_f32().unwrap() / bet);
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 18 -     u[0] = (r[0].to_f32().unwrap() / bet).into();
[INFO] [stdout] 18 +     u[0] = <f32 as Into<_>>::into((r[0].to_f32().unwrap() / bet));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]   --> src/linalg/vander.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |             b = (c[j] + T::from(xx * b)).into();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 23 -             b = (c[j] + T::from(xx * b)).into();
[INFO] [stdout] 23 +             b = (c[j] + T::from(xx * b));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 23 -             b = (c[j] + T::from(xx * b)).into();
[INFO] [stdout] 23 +             b = <T as Into<_>>::into((c[j] + T::from(xx * b)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `T`
[INFO] [stdout]   --> src/linalg/vander.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |             t = (T::from(xx * t) + b).into();
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 25 -             t = (T::from(xx * t) + b).into();
[INFO] [stdout] 25 +             t = (T::from(xx * t) + b);
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 25 -             t = (T::from(xx * t) + b).into();
[INFO] [stdout] 25 +             t = <T as Into<_>>::into((T::from(xx * t) + b));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/linalg/svd.rs:237:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |             self.solve(&b.get_col(j), &mut tmp);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 237 |             let _unused = self.solve(&b.get_col(j), &mut tmp);
[INFO] [stdout]     |             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `numerics` (lib test) due to 8 previous errors; 6 warnings emitted
[INFO] [stderr] warning: unused dependency `clap`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | clap = "3.0.0-beta.5"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `clap`
[INFO] [stderr] warning: unused dependency `csv`
[INFO] [stderr]  --> Cargo.toml:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | csv = "1.1.6"
[INFO] [stderr]   | ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `csv`
[INFO] [stderr] warning: `numerics` (manifest) generated 2 warnings
[INFO] running `Command { std: "docker" "inspect" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9", kill_on_drop: false }`
[INFO] [stdout] b718cbd361ef63077dae831f02361c21cab0e5fbfa7ac934b9eea2c5b1c79be9
