[INFO] cloning repository https://github.com/CJD13/algebra [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/CJD13/algebra" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCJD13%2Falgebra", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCJD13%2Falgebra'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b85f7669ce3dd1c341d978b8ad3c8b74b88b117f [INFO] checking CJD13/algebra/b85f7669ce3dd1c341d978b8ad3c8b74b88b117f against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCJD13%2Falgebra" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/CJD13/algebra on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/CJD13/algebra [INFO] finished tweaking git repo https://github.com/CJD13/algebra [INFO] tweaked toml for git repo https://github.com/CJD13/algebra written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/CJD13/algebra already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a9a3252acb98337660abb4f0d78b763f2b9d7bea8565610df9fa2be742f10e37 [INFO] running `Command { std: "docker" "start" "-a" "a9a3252acb98337660abb4f0d78b763f2b9d7bea8565610df9fa2be742f10e37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a9a3252acb98337660abb4f0d78b763f2b9d7bea8565610df9fa2be742f10e37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a9a3252acb98337660abb4f0d78b763f2b9d7bea8565610df9fa2be742f10e37", kill_on_drop: false }` [INFO] [stdout] a9a3252acb98337660abb4f0d78b763f2b9d7bea8565610df9fa2be742f10e37 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b42454b07d7841f17c2c0a736db9f0f5ea5eda1eccda40bf1d36c908d35acaa2 [INFO] running `Command { std: "docker" "start" "-a" "b42454b07d7841f17c2c0a736db9f0f5ea5eda1eccda40bf1d36c908d35acaa2", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Checking take_mut v0.2.2 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Checking algebra v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: type `i64AdjX` should have an upper camel case name [INFO] [stdout] --> src/polynomial.rs:387:6 [INFO] [stdout] | [INFO] [stdout] 387 | type i64AdjX=Polynomial; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `I64adjX` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Subgroup` [INFO] [stdout] --> src/quotient.rs:8:40 [INFO] [stdout] | [INFO] [stdout] 8 | group::{Group, NormalSubgroup, Subgroup}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AbelianGroup` [INFO] [stdout] --> src/structure/ring.rs:3:38 [INFO] [stdout] | [INFO] [stdout] 3 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AbelianGroup`, `Monoid`, and `Subgroup` [INFO] [stdout] --> src/structure/euclidean_ring.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `QuotientGroup`, `euclidean_ring::EuclideanRing`, `group::Group`, `impls`, and `monoid::Monoid` [INFO] [stdout] --> src/lib.rs:20:21 [INFO] [stdout] | [INFO] [stdout] 20 | quotient::{ QuotientGroup, QuotientRing, IntMultiples}, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 21 | structure::{ring::{Ring}, group::Group, monoid::Monoid, euclidean_ring::EuclideanRing}, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | set::{Subset}, impls::StandardOps, [INFO] [stdout] 23 | impls [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `i64AdjX` should have an upper camel case name [INFO] [stdout] --> src/polynomial.rs:387:6 [INFO] [stdout] | [INFO] [stdout] 387 | type i64AdjX=Polynomial; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `I64adjX` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Subgroup` [INFO] [stdout] --> src/quotient.rs:8:40 [INFO] [stdout] | [INFO] [stdout] 8 | group::{Group, NormalSubgroup, Subgroup}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AbelianGroup` [INFO] [stdout] --> src/structure/ring.rs:3:38 [INFO] [stdout] | [INFO] [stdout] 3 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AbelianGroup`, `Monoid`, and `Subgroup` [INFO] [stdout] --> src/structure/euclidean_ring.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AbsorbingSubset` [INFO] [stdout] --> src/structure/euclidean_ring.rs:4:70 [INFO] [stdout] | [INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Subset` [INFO] [stdout] --> src/quotient.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | set::{Set, Subset}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AbsorbingSubset` [INFO] [stdout] --> src/quotient.rs:9:26 [INFO] [stdout] | [INFO] [stdout] 9 | monoid::{Monoid, AbsorbingSubset}, ring::{Ideal, RingOperations, Ring}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `q` [INFO] [stdout] --> src/structure/euclidean_ring.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | let (q,r) = a.divide(&b); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_q` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `divisor` [INFO] [stdout] --> src/structure/euclidean_ring.rs:49:23 [INFO] [stdout] | [INFO] [stdout] 49 | fn remainder(self,divisor:&Self) -> Self { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_divisor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AbsorbingSubset` [INFO] [stdout] --> src/quotient.rs:9:26 [INFO] [stdout] | [INFO] [stdout] 9 | monoid::{Monoid, AbsorbingSubset}, ring::{Ideal, RingOperations, Ring}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AbsorbingSubset` [INFO] [stdout] --> src/structure/euclidean_ring.rs:4:70 [INFO] [stdout] | [INFO] [stdout] 4 | use super::{group::{Group, Subgroup, AbelianGroup}, monoid::{Monoid, AbsorbingSubset}, ring::{Ring, RingOperations}, field::Field}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Subset` [INFO] [stdout] --> src/quotient.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | set::{Set, Subset}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `O0` is never used [INFO] [stdout] --> src/operation.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait O0 { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `O1` is never used [INFO] [stdout] --> src/operation.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait O1 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `of` is never used [INFO] [stdout] --> src/polynomial.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 59 | / impl Polynomial [INFO] [stdout] 60 | | where [INFO] [stdout] 61 | | O: RingOperations, [INFO] [stdout] 62 | | R: Ring, [INFO] [stdout] | |_______________- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn of(&self, x: R) -> R { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XSquaredPlus1` is never constructed [INFO] [stdout] --> src/polynomial.rs:388:8 [INFO] [stdout] | [INFO] [stdout] 388 | struct XSquaredPlus1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `GaussianI64` is never used [INFO] [stdout] --> src/polynomial.rs:392:6 [INFO] [stdout] | [INFO] [stdout] 392 | type GaussianI64=QuotientRing,Multiples,XSquaredPlus1>>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `IntMultiples` is never used [INFO] [stdout] --> src/quotient.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | pub type IntMultiples=Multiples>; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FiniteSubset` is never used [INFO] [stdout] --> src/set.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait FiniteSubset: Subset + IntoIterator [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FiniteSet` is never used [INFO] [stdout] --> src/set.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub trait FiniteSet: Set + IntoIterator { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `pow` is never used [INFO] [stdout] --> src/structure/group.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait Group>: Monoid { [INFO] [stdout] | ----- associated function in this trait [INFO] [stdout] ... [INFO] [stdout] 11 | fn pow(a: Self, n: i64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `pow` is never used [INFO] [stdout] --> src/structure/monoid.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait Monoid>: Set { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 10 | fn pow(self, n: u64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Submonoid` is never used [INFO] [stdout] --> src/structure/monoid.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub trait Submonoid>:Subset+Monoid where M: Monoid,O:O2 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `times` is never used [INFO] [stdout] --> src/structure/monoid.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait AbsorbingSubset>:Subset where M: Monoid{ [INFO] [stdout] | --------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 33 | fn times(self, m:&M) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `minus`, `from_integer`, and `pow` are never used [INFO] [stdout] --> src/structure/ring.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait Ring: Group + Monoid [INFO] [stdout] | ---- associated items in this trait [INFO] [stdout] ... [INFO] [stdout] 30 | fn minus(self, other: &Self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn from_integer(n: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | fn pow(self, n:u64)->Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `norm`, `bézout`, and `gcd` are never used [INFO] [stdout] --> src/structure/euclidean_ring.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait EuclideanRing>:Ring { [INFO] [stdout] | ------------- associated items in this trait [INFO] [stdout] 6 | //The Euclidean norm of the ring. [INFO] [stdout] 7 | fn norm(&self) -> Degree; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | fn bézout(a:Self,b:Self)->(Self,Self){ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn gcd(a:Self,b:Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Outer` is never used [INFO] [stdout] --> src/test.rs:1:7 [INFO] [stdout] | [INFO] [stdout] 1 | trait Outer [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Inner` is never used [INFO] [stdout] --> src/test.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | trait Inner { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Bound` is never used [INFO] [stdout] --> src/test.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | trait Bound {} [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/operation.rs:12:64 [INFO] [stdout] | [INFO] [stdout] 12 | const F: fn((S,T), &(S,T)) -> (S,T) = |(s1,t1) , (s2,t2)| (O::F(s1,s2),P::F(t1,t2)); [INFO] [stdout] | ------- ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/operation.rs:12:76 [INFO] [stdout] | [INFO] [stdout] 12 | const F: fn((S,T), &(S,T)) -> (S,T) = |(s1,t1) , (s2,t2)| (O::F(s1,s2),P::F(t1,t2)); [INFO] [stdout] | ------- ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/polynomial.rs:96:27 [INFO] [stdout] | [INFO] [stdout] 94 | fn constant(c: R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | Polynomial { [INFO] [stdout] 96 | coefficients: Self::trim_zeros(vec![c]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `xPower` should have a snake case name [INFO] [stdout] --> src/polynomial.rs:164:17 [INFO] [stdout] | [INFO] [stdout] 164 | let mut xPower = R::one(); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `x_power` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/polynomial.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 352 | fn quotient(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 353 | Polynomial::divide(self,divisor).0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/polynomial.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 358 | fn remainder(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 359 | Self::divide(self, divisor).1 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:75:36 [INFO] [stdout] | [INFO] [stdout] 75 | |a, b| QuotientGroup::from(a.representative.star(&b.representative)); [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:94:29 [INFO] [stdout] | [INFO] [stdout] 93 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 94 | QuotientGroup::from(self.representative.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 115 | fn from(g: G) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 116 | Self { [INFO] [stdout] 117 | representative: H::reduce(g), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 129 | fn from(value: R) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 130 | Self { representative: I::reduce(value), i: PhantomData, o: PhantomData } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:160:110 [INFO] [stdout] | [INFO] [stdout] 160 | ...g = |a,b| QuotientRing::from(a.representative.plus(&b.representative)); [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:163:110 [INFO] [stdout] | [INFO] [stdout] 163 | ...g = |a,b| QuotientRing::from(a.representative.times(&b.representative)); [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:172:20 [INFO] [stdout] | [INFO] [stdout] 171 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 172 | Self::from(self.representative.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/field.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | fn reciprocal(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | / as Subset>::try_from(self) [INFO] [stdout] 17 | | .inverse() [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/group.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 11 | fn pow(a: Self, n: i64) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 15 | >::pow(a, -n as u64).inverse() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/group.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 59 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | (self.0.inverse(), self.1.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/group.rs:60:28 [INFO] [stdout] | [INFO] [stdout] 59 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | (self.0.inverse(), self.1.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/monoid.rs:20:22 [INFO] [stdout] | [INFO] [stdout] 10 | fn pow(self, n: u64) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 14 | let rem = if n % 2 == 1 { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 19 | let i = self.pow(n / 2); [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | Operation::F(Operation::F(i.clone(), &i), &rem) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/monoid.rs:34:24 [INFO] [stdout] | [INFO] [stdout] 33 | fn times(self, m:&M) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 34 | Self::try_from(self.inclusion().star(m)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/ring.rs:31:26 [INFO] [stdout] | [INFO] [stdout] 30 | fn minus(self, other: &Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 31 | O::PLUS::F(self,&other.clone().negated()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/ring.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 37 | fn times_left(self, other: &Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | other.clone().times(&self) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 12 | fn remainder(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 13 | self.clone().plus(&self.quotient(divisor).times(divisor)).negated() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 15 | fn divide(self, divisor:&Self) -> (Self,Self) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | (self.clone().quotient(divisor),self.remainder(divisor)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:16:41 [INFO] [stdout] | [INFO] [stdout] 15 | fn divide(self, divisor:&Self) -> (Self,Self) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | (self.clone().quotient(divisor),self.remainder(divisor)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:47:21 [INFO] [stdout] | [INFO] [stdout] 46 | fn quotient(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 47 | self.times(&divisor.clone().reciprocal()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:45:100 [INFO] [stdout] | [INFO] [stdout] 45 | ...s = |a,b| Multiples { data: a.data.plus(&b.data), o: PhantomData, a: PhantomData }; [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:54:27 [INFO] [stdout] | [INFO] [stdout] 53 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | Multiples { data: self.data.inverse(), o: PhantomData, a: PhantomData } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 61 | fn times(self, m:&R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | Self { data: self.data.times(m), o: PhantomData, a: PhantomData } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:67:22 [INFO] [stdout] | [INFO] [stdout] 66 | fn reduce(r: R) -> R { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 67 | r.remainder(&A::VAL()) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:11:71 [INFO] [stdout] | [INFO] [stdout] 11 | ...nit = |a,b| Unit { u: a.u.times(&b.u), u_inverse: a.u_inverse.times_left(&b.u_inverse), o: PhantomData }; [INFO] [stdout] | - ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `q` [INFO] [stdout] --> src/structure/euclidean_ring.rs:33:18 [INFO] [stdout] | [INFO] [stdout] 33 | let (q,r) = a.divide(&b); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_q` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `divisor` [INFO] [stdout] --> src/structure/euclidean_ring.rs:49:23 [INFO] [stdout] | [INFO] [stdout] 49 | fn remainder(self,divisor:&Self) -> Self { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_divisor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:11:99 [INFO] [stdout] | [INFO] [stdout] 11 | ...nit = |a,b| Unit { u: a.u.times(&b.u), u_inverse: a.u_inverse.times_left(&b.u_inverse), o: PhantomData }; [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:62:19 [INFO] [stdout] | [INFO] [stdout] 61 | fn try_from(t: R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | Unit { u: t.clone(), u_inverse: t.try_inverse().unwrap(),o:PhantomData} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:62:41 [INFO] [stdout] | [INFO] [stdout] 61 | fn try_from(t: R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | Unit { u: t.clone(), u_inverse: t.try_inverse().unwrap(),o:PhantomData} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 32 previous errors; 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `O0` is never used [INFO] [stdout] --> src/operation.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait O0 { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `O1` is never used [INFO] [stdout] --> src/operation.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait O1 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XSquaredPlus1` is never constructed [INFO] [stdout] --> src/polynomial.rs:388:8 [INFO] [stdout] | [INFO] [stdout] 388 | struct XSquaredPlus1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `GaussianI64` is never used [INFO] [stdout] --> src/polynomial.rs:392:6 [INFO] [stdout] | [INFO] [stdout] 392 | type GaussianI64=QuotientRing,Multiples,XSquaredPlus1>>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FiniteSubset` is never used [INFO] [stdout] --> src/set.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait FiniteSubset: Subset + IntoIterator [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FiniteSet` is never used [INFO] [stdout] --> src/set.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub trait FiniteSet: Set + IntoIterator { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `pow` is never used [INFO] [stdout] --> src/structure/group.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait Group>: Monoid { [INFO] [stdout] | ----- associated function in this trait [INFO] [stdout] ... [INFO] [stdout] 11 | fn pow(a: Self, n: i64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Submonoid` is never used [INFO] [stdout] --> src/structure/monoid.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub trait Submonoid>:Subset+Monoid where M: Monoid,O:O2 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `times` is never used [INFO] [stdout] --> src/structure/monoid.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub trait AbsorbingSubset>:Subset where M: Monoid{ [INFO] [stdout] | --------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 33 | fn times(self, m:&M) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `minus` and `from_integer` are never used [INFO] [stdout] --> src/structure/ring.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait Ring: Group + Monoid [INFO] [stdout] | ---- associated items in this trait [INFO] [stdout] ... [INFO] [stdout] 30 | fn minus(self, other: &Self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn from_integer(n: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `norm`, `bézout`, and `gcd` are never used [INFO] [stdout] --> src/structure/euclidean_ring.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait EuclideanRing>:Ring { [INFO] [stdout] | ------------- associated items in this trait [INFO] [stdout] 6 | //The Euclidean norm of the ring. [INFO] [stdout] 7 | fn norm(&self) -> Degree; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | fn bézout(a:Self,b:Self)->(Self,Self){ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn gcd(a:Self,b:Self) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Outer` is never used [INFO] [stdout] --> src/test.rs:1:7 [INFO] [stdout] | [INFO] [stdout] 1 | trait Outer [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Inner` is never used [INFO] [stdout] --> src/test.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | trait Inner { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Bound` is never used [INFO] [stdout] --> src/test.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | trait Bound {} [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/operation.rs:12:64 [INFO] [stdout] | [INFO] [stdout] 12 | const F: fn((S,T), &(S,T)) -> (S,T) = |(s1,t1) , (s2,t2)| (O::F(s1,s2),P::F(t1,t2)); [INFO] [stdout] | ------- ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/operation.rs:12:76 [INFO] [stdout] | [INFO] [stdout] 12 | const F: fn((S,T), &(S,T)) -> (S,T) = |(s1,t1) , (s2,t2)| (O::F(s1,s2),P::F(t1,t2)); [INFO] [stdout] | ------- ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/polynomial.rs:96:27 [INFO] [stdout] | [INFO] [stdout] 94 | fn constant(c: R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | Polynomial { [INFO] [stdout] 96 | coefficients: Self::trim_zeros(vec![c]), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `xPower` should have a snake case name [INFO] [stdout] --> src/polynomial.rs:164:17 [INFO] [stdout] | [INFO] [stdout] 164 | let mut xPower = R::one(); [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `x_power` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/polynomial.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 352 | fn quotient(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 353 | Polynomial::divide(self,divisor).0 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/polynomial.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 358 | fn remainder(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 359 | Self::divide(self, divisor).1 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:75:36 [INFO] [stdout] | [INFO] [stdout] 75 | |a, b| QuotientGroup::from(a.representative.star(&b.representative)); [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:94:29 [INFO] [stdout] | [INFO] [stdout] 93 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 94 | QuotientGroup::from(self.representative.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 115 | fn from(g: G) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 116 | Self { [INFO] [stdout] 117 | representative: H::reduce(g), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 129 | fn from(value: R) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 130 | Self { representative: I::reduce(value), i: PhantomData, o: PhantomData } [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:160:110 [INFO] [stdout] | [INFO] [stdout] 160 | ...g = |a,b| QuotientRing::from(a.representative.plus(&b.representative)); [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:163:110 [INFO] [stdout] | [INFO] [stdout] 163 | ...g = |a,b| QuotientRing::from(a.representative.times(&b.representative)); [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/quotient.rs:172:20 [INFO] [stdout] | [INFO] [stdout] 171 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 172 | Self::from(self.representative.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/field.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | fn reciprocal(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | / as Subset>::try_from(self) [INFO] [stdout] 17 | | .inverse() [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `algebra` (lib) due to 33 previous errors; 27 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/group.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 11 | fn pow(a: Self, n: i64) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 15 | >::pow(a, -n as u64).inverse() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/group.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 59 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | (self.0.inverse(), self.1.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/group.rs:60:28 [INFO] [stdout] | [INFO] [stdout] 59 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | (self.0.inverse(), self.1.inverse()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/monoid.rs:20:22 [INFO] [stdout] | [INFO] [stdout] 10 | fn pow(self, n: u64) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 14 | let rem = if n % 2 == 1 { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 19 | let i = self.pow(n / 2); [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | Operation::F(Operation::F(i.clone(), &i), &rem) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/monoid.rs:34:24 [INFO] [stdout] | [INFO] [stdout] 33 | fn times(self, m:&M) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 34 | Self::try_from(self.inclusion().star(m)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/ring.rs:31:26 [INFO] [stdout] | [INFO] [stdout] 30 | fn minus(self, other: &Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 31 | O::PLUS::F(self,&other.clone().negated()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/ring.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 37 | fn times_left(self, other: &Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | other.clone().times(&self) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 12 | fn remainder(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 13 | self.clone().plus(&self.quotient(divisor).times(divisor)).negated() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 15 | fn divide(self, divisor:&Self) -> (Self,Self) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | (self.clone().quotient(divisor),self.remainder(divisor)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:16:41 [INFO] [stdout] | [INFO] [stdout] 15 | fn divide(self, divisor:&Self) -> (Self,Self) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 16 | (self.clone().quotient(divisor),self.remainder(divisor)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/structure/euclidean_ring.rs:47:21 [INFO] [stdout] | [INFO] [stdout] 46 | fn quotient(self,divisor:&Self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 47 | self.times(&divisor.clone().reciprocal()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:45:100 [INFO] [stdout] | [INFO] [stdout] 45 | ...s = |a,b| Multiples { data: a.data.plus(&b.data), o: PhantomData, a: PhantomData }; [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:54:27 [INFO] [stdout] | [INFO] [stdout] 53 | fn inverse(self) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | Multiples { data: self.data.inverse(), o: PhantomData, a: PhantomData } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 61 | fn times(self, m:&R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | Self { data: self.data.times(m), o: PhantomData, a: PhantomData } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/modular.rs:67:22 [INFO] [stdout] | [INFO] [stdout] 66 | fn reduce(r: R) -> R { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 67 | r.remainder(&A::VAL()) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:11:71 [INFO] [stdout] | [INFO] [stdout] 11 | ...nit = |a,b| Unit { u: a.u.times(&b.u), u_inverse: a.u_inverse.times_left(&b.u_inverse), o: PhantomData }; [INFO] [stdout] | - ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:11:99 [INFO] [stdout] | [INFO] [stdout] 11 | ...nit = |a,b| Unit { u: a.u.times(&b.u), u_inverse: a.u_inverse.times_left(&b.u_inverse), o: PhantomData }; [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:62:19 [INFO] [stdout] | [INFO] [stdout] 61 | fn try_from(t: R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | Unit { u: t.clone(), u_inverse: t.try_inverse().unwrap(),o:PhantomData} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/unit.rs:62:41 [INFO] [stdout] | [INFO] [stdout] 61 | fn try_from(t: R) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | Unit { u: t.clone(), u_inverse: t.try_inverse().unwrap(),o:PhantomData} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 32 previous errors; 25 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `algebra` (lib test) due to 33 previous errors; 25 warnings emitted [INFO] running `Command { std: "docker" "inspect" "b42454b07d7841f17c2c0a736db9f0f5ea5eda1eccda40bf1d36c908d35acaa2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b42454b07d7841f17c2c0a736db9f0f5ea5eda1eccda40bf1d36c908d35acaa2", kill_on_drop: false }` [INFO] [stdout] b42454b07d7841f17c2c0a736db9f0f5ea5eda1eccda40bf1d36c908d35acaa2