[INFO] cloning repository https://github.com/asandroq/mirage [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/asandroq/mirage" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fasandroq%2Fmirage", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fasandroq%2Fmirage'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 363a69ac69b66ce73d80f364eeee1b9a999640f2 [INFO] checking asandroq/mirage/363a69ac69b66ce73d80f364eeee1b9a999640f2 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%2Fasandroq%2Fmirage" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/asandroq/mirage 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/asandroq/mirage [INFO] finished tweaking git repo https://github.com/asandroq/mirage [INFO] tweaked toml for git repo https://github.com/asandroq/mirage written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/asandroq/mirage 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] f97876b8ef0ab2bc794f0c7a3800613cc38ca6c0ad97089d84ea3e2b47626e76 [INFO] running `Command { std: "docker" "start" "-a" "f97876b8ef0ab2bc794f0c7a3800613cc38ca6c0ad97089d84ea3e2b47626e76", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f97876b8ef0ab2bc794f0c7a3800613cc38ca6c0ad97089d84ea3e2b47626e76", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f97876b8ef0ab2bc794f0c7a3800613cc38ca6c0ad97089d84ea3e2b47626e76", kill_on_drop: false }` [INFO] [stdout] f97876b8ef0ab2bc794f0c7a3800613cc38ca6c0ad97089d84ea3e2b47626e76 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 4d99d0d353270b0fc2bb386d612404c9a832477a3941369bd2222863b5ef364b [INFO] running `Command { std: "docker" "start" "-a" "4d99d0d353270b0fc2bb386d612404c9a832477a3941369bd2222863b5ef364b", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.29 [INFO] [stderr] Compiling io-lifetimes v0.6.1 [INFO] [stderr] Compiling libc v0.2.142 [INFO] [stderr] Compiling syn v1.0.78 [INFO] [stderr] Compiling rustix v0.34.3 [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Checking linux-raw-sys v0.0.42 [INFO] [stderr] Checking smallvec v1.8.0 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Checking endian-type v0.1.2 [INFO] [stderr] Checking nibble_vec v0.1.0 [INFO] [stderr] Checking utf8parse v0.2.0 [INFO] [stderr] Checking radix_trie v0.2.1 [INFO] [stderr] Checking home v0.5.5 [INFO] [stderr] Checking bitflags v2.4.1 [INFO] [stderr] Checking unicode-segmentation v1.9.0 [INFO] [stderr] Checking unicode-width v0.1.9 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Checking nix v0.26.2 [INFO] [stderr] Compiling thiserror-impl v1.0.29 [INFO] [stderr] Checking fd-lock v3.0.5 [INFO] [stderr] Checking rustyline v12.0.0 [INFO] [stderr] Checking thiserror v1.0.29 [INFO] [stderr] Checking mirage v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> src/lang/parser.rs:430:13 [INFO] [stdout] | [INFO] [stdout] 430 | Variant(String, Vec, NonEmptyVec<(String, Vec)>), [INFO] [stdout] | ------- ^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TopLvlDecl` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 430 | Variant((), (), ()), [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/collections/nonemptyvec.rs:29:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new(elem: T) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 28 | NonEmptyVec { [INFO] [stdout] 29 | elem: Box::new(elem), [INFO] [stdout] | ^^^^^^^^^^^^^^ [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/collections/nonemptyvec.rs:30:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new(elem: T) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | rest: Vec::new(), [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/collections/nonemptyvec.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn into_parts(self) -> (T, std::vec::IntoIter) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 46 | (*self.elem, self.rest.into_iter()) [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/collections/nonemptyvec.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 88 | fn into_iter(self) -> Self::IntoIter { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 89 | self.into_vec().into_iter() [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/collections/sharedlist.rs:29:31 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn cons(&self, t: T) -> SharedList { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 29 | SharedList::::Cons(Rc::new(t), Rc::new(self.clone())) [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/collections/sharedlist.rs:29:43 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn cons(&self, t: T) -> SharedList { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 29 | SharedList::::Cons(Rc::new(t), Rc::new(self.clone())) [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/lang/mod.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 35 | fn load(src: &parser::Module, mut ctx: Ctx) -> Result { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 57 | let items = if let Some((var, ts)) = rib_iter.next() { [INFO] [stdout] | ----- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | let mut rib = NonEmptyVec::new((var, ts)); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 62 | let checker = TypeChecker::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 63 | let (_, items) = scope.into_iter().try_fold( [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | Ok(Module { items }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/mod.rs:55:38 [INFO] [stdout] | [INFO] [stdout] 55 | .map(|var| (var.clone(), TypeScheme::new_var("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] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> src/lang/parser.rs:430:13 [INFO] [stdout] | [INFO] [stdout] 430 | Variant(String, Vec, NonEmptyVec<(String, Vec)>), [INFO] [stdout] | ------- ^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TopLvlDecl` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 430 | Variant((), (), ()), [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/collections/nonemptyvec.rs:29:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new(elem: T) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 28 | NonEmptyVec { [INFO] [stdout] 29 | elem: Box::new(elem), [INFO] [stdout] | ^^^^^^^^^^^^^^ [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/collections/nonemptyvec.rs:30:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new(elem: T) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | rest: Vec::new(), [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/collections/nonemptyvec.rs:46:22 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn into_parts(self) -> (T, std::vec::IntoIter) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 46 | (*self.elem, self.rest.into_iter()) [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/collections/nonemptyvec.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 88 | fn into_iter(self) -> Self::IntoIter { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 89 | self.into_vec().into_iter() [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/collections/sharedlist.rs:29:31 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn cons(&self, t: T) -> SharedList { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 29 | SharedList::::Cons(Rc::new(t), Rc::new(self.clone())) [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/collections/sharedlist.rs:29:43 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn cons(&self, t: T) -> SharedList { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 29 | SharedList::::Cons(Rc::new(t), Rc::new(self.clone())) [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/lang/mod.rs:104:36 [INFO] [stdout] | [INFO] [stdout] 65 | |(ctx, mut items), (var, (mut args, ast))| { [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 66 | let (ctx, expr, ty, _) = if let Some(lvar) = args.next() { [INFO] [stdout] | --- ---- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 67 | let mut lvars = NonEmptyVec::new(lvar); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 68 | lvars.extend(args); [INFO] [stdout] 69 | let (ctx, lam, ty, cs) = checker.check_lambda(lvars, ast, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 70 | let term = Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 89 | let tscm = TypeScheme { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 95 | let term = Rc::new(Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 102 | let entry = ModuleEntry { term, tscm }; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 103 | items.insert(var, entry); [INFO] [stdout] 104 | Ok::<_, Error>((ctx, items)) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/mod.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 35 | fn load(src: &parser::Module, mut ctx: Ctx) -> Result { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 57 | let items = if let Some((var, ts)) = rib_iter.next() { [INFO] [stdout] | ----- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | let mut rib = NonEmptyVec::new((var, ts)); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 62 | let checker = TypeChecker::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 63 | let (_, items) = scope.into_iter().try_fold( [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | Ok(Module { items }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/mod.rs:55:38 [INFO] [stdout] | [INFO] [stdout] 55 | .map(|var| (var.clone(), TypeScheme::new_var("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/lang/mod.rs:104:36 [INFO] [stdout] | [INFO] [stdout] 65 | |(ctx, mut items), (var, (mut args, ast))| { [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 66 | let (ctx, expr, ty, _) = if let Some(lvar) = args.next() { [INFO] [stdout] | --- ---- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 67 | let mut lvars = NonEmptyVec::new(lvar); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 68 | lvars.extend(args); [INFO] [stdout] 69 | let (ctx, lam, ty, cs) = checker.check_lambda(lvars, ast, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 70 | let term = Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 89 | let tscm = TypeScheme { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 95 | let term = Rc::new(Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 102 | let entry = ModuleEntry { term, tscm }; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 103 | items.insert(var, entry); [INFO] [stdout] 104 | Ok::<_, Error>((ctx, items)) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/mod.rs:86:58 [INFO] [stdout] | [INFO] [stdout] 86 | ... .map_or(true, |(_, ts)| !ts.ptype.vars().contains(v)) [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/lang/ast.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) fn new_app(oper: impl Into>, args: NonEmptyVec) -> AstBuilder { [INFO] [stdout] | ------------------------- ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 7 | AstBuilder::new(AstKind::App(App::new(oper, args))) [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/lang/ast.rs:15:21 [INFO] [stdout] | [INFO] [stdout] 12 | lhs: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 13 | rhs: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 14 | ) -> AstBuilder { [INFO] [stdout] 15 | AstBuilder::new(AstKind::BinOp(BinOp::new(oper, lhs, rhs))) [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/lang/ast.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 23 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 24 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 25 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 26 | ) -> AstBuilder { [INFO] [stdout] 27 | AstBuilder::new(AstKind::If(If::new(cond, conseq, alter))) [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/lang/ast.rs:35:21 [INFO] [stdout] | [INFO] [stdout] 34 | pub(crate) fn new_lambda(vars: NonEmptyVec, body: impl Into>) -> AstBuilder { [INFO] [stdout] | ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 35 | AstBuilder::new(AstKind::Lam(Lambda::new(vars, body))) [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/lang/ast.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 39 | pat: Pattern, [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 42 | ) -> AstBuilder { [INFO] [stdout] 43 | AstBuilder::new(AstKind::Let(Let::new(pat, expr, body))) [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/lang/ast.rs:52:21 [INFO] [stdout] | [INFO] [stdout] 48 | vty: Option, [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 49 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 50 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 51 | ) -> AstBuilder { [INFO] [stdout] 52 | AstBuilder::new(AstKind::Letrec(Letrec::new(var, vty, expr, body))) [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/lang/ast.rs:60:21 [INFO] [stdout] | [INFO] [stdout] 56 | fst: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 57 | snd: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | rest: Vec, [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 59 | ) -> AstBuilder { [INFO] [stdout] 60 | AstBuilder::new(AstKind::Tuple(Tuple::new(fst, snd, rest))) [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/lang/ast.rs:64:21 [INFO] [stdout] | [INFO] [stdout] 63 | pub(crate) fn new_tupleref(index: usize, tuple: impl Into>) -> AstBuilder { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 64 | AstBuilder::new(AstKind::TupleRef(TupleRef::new(index, tuple))) [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/lang/ast.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub(crate) fn build(self) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | Ok(Ast { [INFO] [stdout] | ____________^ [INFO] [stdout] 113 | | kind: self.kind, [INFO] [stdout] 114 | | ctx, [INFO] [stdout] 115 | | span, [INFO] [stdout] 116 | | }) [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/lang/ast.rs:249:19 [INFO] [stdout] | [INFO] [stdout] 247 | pub(crate) fn new(oper: impl Into>, args: NonEmptyVec) -> Self { [INFO] [stdout] | ------------------------- ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 248 | Self { [INFO] [stdout] 249 | oper: oper.into(), [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/lang/ast.rs:275:18 [INFO] [stdout] | [INFO] [stdout] 272 | pub(crate) fn new(oper: String, lhs: impl Into>, rhs: impl Into>) -> Self { [INFO] [stdout] | ------------------------ ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 275 | lhs: lhs.into(), [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/lang/ast.rs:276:18 [INFO] [stdout] | [INFO] [stdout] 272 | pub(crate) fn new(oper: String, lhs: impl Into>, rhs: impl Into>) -> Self { [INFO] [stdout] | ------------------------ ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 276 | rhs: rhs.into(), [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/lang/ast.rs:301:19 [INFO] [stdout] | [INFO] [stdout] 296 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 297 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 298 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 301 | cond: cond.into(), [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/lang/ast.rs:302:21 [INFO] [stdout] | [INFO] [stdout] 296 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 297 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 298 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 302 | conseq: conseq.into(), [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/lang/ast.rs:303:20 [INFO] [stdout] | [INFO] [stdout] 296 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 297 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 298 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 303 | alter: alter.into(), [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/lang/ast.rs:322:19 [INFO] [stdout] | [INFO] [stdout] 319 | pub(crate) fn new(vars: NonEmptyVec, body: impl Into>) -> Self { [INFO] [stdout] | ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 322 | body: body.into(), [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/lang/ast.rs:349:19 [INFO] [stdout] | [INFO] [stdout] 346 | pub(crate) fn new(pat: Pattern, expr: impl Into>, body: impl Into>) -> Self { [INFO] [stdout] | ------------ ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 349 | expr: expr.into(), [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/lang/ast.rs:350:19 [INFO] [stdout] | [INFO] [stdout] 346 | pub(crate) fn new(pat: Pattern, expr: impl Into>, body: impl Into>) -> Self { [INFO] [stdout] | ------------ ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | body: body.into(), [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/lang/ast.rs:384:19 [INFO] [stdout] | [INFO] [stdout] 377 | vty: Option, [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 378 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 379 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 384 | expr: expr.into(), [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/lang/ast.rs:385:19 [INFO] [stdout] | [INFO] [stdout] 377 | vty: Option, [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 378 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 379 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 385 | body: body.into(), [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/lang/ast.rs:409:18 [INFO] [stdout] | [INFO] [stdout] 407 | pub(crate) fn new(fst: impl Into>, snd: impl Into>, rest: Vec) -> Self { [INFO] [stdout] | ------------------------ ------------------------ -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 408 | Self { [INFO] [stdout] 409 | fst: fst.into(), [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/lang/ast.rs:410:18 [INFO] [stdout] | [INFO] [stdout] 407 | pub(crate) fn new(fst: impl Into>, snd: impl Into>, rest: Vec) -> Self { [INFO] [stdout] | ------------------------ ------------------------ -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 410 | snd: snd.into(), [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/lang/ast.rs:433:20 [INFO] [stdout] | [INFO] [stdout] 430 | pub(crate) fn new(index: usize, tuple: impl Into>) -> Self { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 433 | tuple: tuple.into(), [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/lang/interp.rs:79:28 [INFO] [stdout] | [INFO] [stdout] 78 | let val = lookup(&var, env)?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 79 | Ok((var, val)) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/interp.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 243 | let sterm = parser.parse()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 244 | let (env, ctx) = self.extract(); [INFO] [stdout] | --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 245 | let checker = TypeChecker::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 246 | let (term, ttype) = checker.typecheck(&sterm, ctx)?; [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 247 | let val = Self::eval_term(&term, &env)?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 248 | Ok((val.as_ref().clone(), ttype)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/mod.rs:86:58 [INFO] [stdout] | [INFO] [stdout] 86 | ... .map_or(true, |(_, ts)| !ts.ptype.vars().contains(v)) [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/lang/parser.rs:156:20 [INFO] [stdout] | [INFO] [stdout] 154 | fn new(input: I, context: String) -> Lexer { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 155 | Lexer { [INFO] [stdout] 156 | input: input.peekable(), [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/lang/parser.rs:167:21 [INFO] [stdout] | [INFO] [stdout] 162 | fn err>>(&self, msg: S) -> Error { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 167 | source: None, [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/lang/parser.rs:510:21 [INFO] [stdout] | [INFO] [stdout] 505 | pub fn new(ctx: &'ctx mut ParserCtx, input: I, input_ctx: String) -> Parser<'ctx, I> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 510 | tokens: Lexer::new(input, input_ctx), [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/lang/parser.rs:515:9 [INFO] [stdout] | [INFO] [stdout] 514 | fn build_ast(&self, builder: AstBuilder) -> Result { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 515 | / builder [INFO] [stdout] 516 | | .with_context(&self.tokens.context) [INFO] [stdout] 517 | | .build() [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/lang/parser.rs:522:25 [INFO] [stdout] | [INFO] [stdout] 522 | source: Some(Box::new(err)), [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/lang/parser.rs:499:21 [INFO] [stdout] | [INFO] [stdout] 499 | source: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 541 | .ok_or_else(|| parse_error!(self, "premature end of input")) [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: this error originates in the macro `parse_error` (in Nightly builds, run with -Z macro-backtrace for more info) [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/lang/ast.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) fn new_app(oper: impl Into>, args: NonEmptyVec) -> AstBuilder { [INFO] [stdout] | ------------------------- ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 7 | AstBuilder::new(AstKind::App(App::new(oper, args))) [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/lang/ast.rs:15:21 [INFO] [stdout] | [INFO] [stdout] 12 | lhs: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 13 | rhs: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 14 | ) -> AstBuilder { [INFO] [stdout] 15 | AstBuilder::new(AstKind::BinOp(BinOp::new(oper, lhs, rhs))) [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/lang/parser.rs:499:21 [INFO] [stdout] | [INFO] [stdout] 499 | source: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 550 | .ok_or_else(|| parse_error!(self, "unexpected end of input")) [INFO] [stdout] | --------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: this error originates in the macro `parse_error` (in Nightly builds, run with -Z macro-backtrace for more info) [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/lang/parser.rs:604:24 [INFO] [stdout] | [INFO] [stdout] 597 | let term1 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 598 | self.consume_token(Token::Then)?; [INFO] [stdout] 599 | let term2 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 600 | self.consume_token(Token::Else)?; [INFO] [stdout] 601 | let term3 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 604 | self.build_ast(ast::new_if(term1, term2, term3).with_span(begin, end)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:616:24 [INFO] [stdout] | [INFO] [stdout] 611 | let vars = self.parse_unique_identifiers()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 612 | self.consume_token(Token::ThickArrow)?; [INFO] [stdout] 613 | let body = self.parse_term()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 616 | self.build_ast(ast::new_lambda(vars, body).with_span(begin, end)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:625:15 [INFO] [stdout] | [INFO] [stdout] 623 | let pat = self.parse_pattern()?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 624 | let tok = self.peek_token()?; [INFO] [stdout] 625 | match (pat, tok) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/ast.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 23 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 24 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 25 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 26 | ) -> AstBuilder { [INFO] [stdout] 27 | AstBuilder::new(AstKind::If(If::new(cond, conseq, alter))) [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/lang/parser.rs:673:24 [INFO] [stdout] | [INFO] [stdout] 660 | let vty = if let Token::Colon = self.peek_token()? { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 668 | let term1 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 669 | self.consume_token(Token::In)?; [INFO] [stdout] 670 | let term2 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 673 | self.build_ast(ast::new_letrec(var, vty, term1, term2).with_span(begin, end)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:499:21 [INFO] [stdout] | [INFO] [stdout] 499 | source: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 715 | .ok_or_else(|| parse_error!(self, "unknown operator {op} found",))?; [INFO] [stdout] | -------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: this error originates in the macro `parse_error` (in Nightly builds, run with -Z macro-backtrace for more info) [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/lang/ast.rs:35:21 [INFO] [stdout] | [INFO] [stdout] 34 | pub(crate) fn new_lambda(vars: NonEmptyVec, body: impl Into>) -> AstBuilder { [INFO] [stdout] | ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 35 | AstBuilder::new(AstKind::Lam(Lambda::new(vars, body))) [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/lang/ast.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 39 | pat: Pattern, [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 42 | ) -> AstBuilder { [INFO] [stdout] 43 | AstBuilder::new(AstKind::Let(Let::new(pat, expr, body))) [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/lang/ast.rs:52:21 [INFO] [stdout] | [INFO] [stdout] 48 | vty: Option, [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 49 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 50 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 51 | ) -> AstBuilder { [INFO] [stdout] 52 | AstBuilder::new(AstKind::Letrec(Letrec::new(var, vty, expr, body))) [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/lang/term.rs:135:52 [INFO] [stdout] | [INFO] [stdout] 135 | let fvs = rest.iter().flat_map(|t| t.free_vars().into_iter()); [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/lang/ast.rs:60:21 [INFO] [stdout] | [INFO] [stdout] 56 | fst: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 57 | snd: impl Into>, [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 58 | rest: Vec, [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 59 | ) -> AstBuilder { [INFO] [stdout] 60 | AstBuilder::new(AstKind::Tuple(Tuple::new(fst, snd, rest))) [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/lang/ast.rs:64:21 [INFO] [stdout] | [INFO] [stdout] 63 | pub(crate) fn new_tupleref(index: usize, tuple: impl Into>) -> AstBuilder { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 64 | AstBuilder::new(AstKind::TupleRef(TupleRef::new(index, tuple))) [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/lang/ast.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub(crate) fn build(self) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | Ok(Ast { [INFO] [stdout] | ____________^ [INFO] [stdout] 113 | | kind: self.kind, [INFO] [stdout] 114 | | ctx, [INFO] [stdout] 115 | | span, [INFO] [stdout] 116 | | }) [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/lang/ast.rs:249:19 [INFO] [stdout] | [INFO] [stdout] 247 | pub(crate) fn new(oper: impl Into>, args: NonEmptyVec) -> Self { [INFO] [stdout] | ------------------------- ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 248 | Self { [INFO] [stdout] 249 | oper: oper.into(), [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/lang/ast.rs:275:18 [INFO] [stdout] | [INFO] [stdout] 272 | pub(crate) fn new(oper: String, lhs: impl Into>, rhs: impl Into>) -> Self { [INFO] [stdout] | ------------------------ ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 275 | lhs: lhs.into(), [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/lang/ast.rs:276:18 [INFO] [stdout] | [INFO] [stdout] 272 | pub(crate) fn new(oper: String, lhs: impl Into>, rhs: impl Into>) -> Self { [INFO] [stdout] | ------------------------ ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 276 | rhs: rhs.into(), [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/lang/ast.rs:301:19 [INFO] [stdout] | [INFO] [stdout] 296 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 297 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 298 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 301 | cond: cond.into(), [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/lang/ast.rs:302:21 [INFO] [stdout] | [INFO] [stdout] 296 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 297 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 298 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 302 | conseq: conseq.into(), [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/lang/type_checker.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn check(&self, ast: &Ast, ctx: Ctx) -> Result<(Ctx, Rc, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 102 | let (kind, ctx, ty, cs) = match &ast.kind { [INFO] [stdout] | ---- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 107 | let (var, ts) = ctx.find(|v| v.name() == name).cloned().ok_or_else(|| { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | let subst = ts [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 126 | let vars = vars.as_ref().map(Variable::local); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 127 | let (ctx, lam, ty, cs) = self.check_lambda(vars, body, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 131 | let (ctx, app, ty, cs) = self.check_app(app, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 135 | let (ctx, if_, ty, cs) = self.check_if(if_, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 139 | let (ctx, let_, ty, cs) = self.check_let(let_, ctx)?; [INFO] [stdout] | --- ---- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 144 | let var_type = letrec [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 148 | let ts = TypeScheme::new(var_type.clone()); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 149 | [INFO] [stdout] 150 | let mut ctx = ctx; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 151 | ctx.extend_one(var.clone(), ts); [INFO] [stdout] 152 | let (ctx, expr, expr_type, expr_cs) = self.check(&letrec.expr, ctx)?; [INFO] [stdout] | --- ---- --------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 153 | let (mut ctx, body, body_type, body_cs) = self.check(&letrec.body, ctx)?; [INFO] [stdout] | --- ---- --------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 160 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 161 | [INFO] [stdout] 162 | let fix = Fix { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 166 | let expr = Rc::new(Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 170 | let pat = Pattern::Var(var); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 180 | let (ctx, tuple, ty, cs) = self.check_tuple(tuple, ctx)?; [INFO] [stdout] | --- ----- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 184 | let (ctx, tuple_ref, ty, cs) = self.check_tuple_ref(tuple_ref, ctx)?; [INFO] [stdout] | --- --------- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | let (ctx, bin_op, ty, cs) = self.check_bin_op(bin_op, ctx)?; [INFO] [stdout] | --- ------ -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 193 | let term = Rc::new(Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 198 | Ok((ctx, term, ty, cs)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/ast.rs:303:20 [INFO] [stdout] | [INFO] [stdout] 296 | cond: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 297 | conseq: impl Into>, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 298 | alter: impl Into>, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 303 | alter: alter.into(), [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/lang/ast.rs:322:19 [INFO] [stdout] | [INFO] [stdout] 319 | pub(crate) fn new(vars: NonEmptyVec, body: impl Into>) -> Self { [INFO] [stdout] | ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 322 | body: body.into(), [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/lang/ast.rs:349:19 [INFO] [stdout] | [INFO] [stdout] 346 | pub(crate) fn new(pat: Pattern, expr: impl Into>, body: impl Into>) -> Self { [INFO] [stdout] | ------------ ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 349 | expr: expr.into(), [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/lang/ast.rs:350:19 [INFO] [stdout] | [INFO] [stdout] 346 | pub(crate) fn new(pat: Pattern, expr: impl Into>, body: impl Into>) -> Self { [INFO] [stdout] | ------------ ------------------------- ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | body: body.into(), [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/lang/type_checker.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 115 | .map(|v| (v, Type::Var(Variable::local("P")))) [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/lang/type_checker.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 201 | pub fn check_app(&self, app: &ast::App, ctx: Ctx) -> Result<(Ctx, App, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 202 | let (ctx, oper, ty1, cs1) = self.check(&app.oper, ctx)?; [INFO] [stdout] | --- ---- --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 205 | let (ctx, first, ty2, cs2) = self.check(first, ctx)?; [INFO] [stdout] | --- ----- --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 206 | [INFO] [stdout] 207 | let mut args = NonEmptyVec::new(first); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 208 | [INFO] [stdout] 209 | let mut tys = VecDeque::new(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 212 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 216 | let mut ctx = ctx; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 225 | let var = Type::Var(Variable::local("Y")); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 226 | let mut func_ty = var.clone(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 232 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 233 | [INFO] [stdout] 234 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 235 | | ctx.apply_subst(&subst), [INFO] [stdout] 236 | | App { oper, args }, [INFO] [stdout] 237 | | var.apply(&subst), [INFO] [stdout] 238 | | cs, [INFO] [stdout] 239 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:262:12 [INFO] [stdout] | [INFO] [stdout] 242 | fn check_bin_op(&self, bin_op: &ast::BinOp, ctx: Ctx) -> Result<(Ctx, BinOp, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 243 | let (ctx, lhs, lhs_ty, cs1) = self.check(&bin_op.lhs, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 244 | let (ctx, rhs, rhs_ty, cs2) = self.check(&bin_op.rhs, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 247 | let info = self [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 254 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 261 | [INFO] [stdout] 262 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 263 | | ctx.apply_subst(&subst), [INFO] [stdout] 264 | | BinOp { oper, lhs, rhs }, [INFO] [stdout] 265 | | info.ttype, [INFO] [stdout] 266 | | cs, [INFO] [stdout] 267 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:284:12 [INFO] [stdout] | [INFO] [stdout] 270 | fn check_if(&self, if_: &ast::If, ctx: Ctx) -> Result<(Ctx, If, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 271 | let (ctx, cond, cond_ty, cond_cs) = self.check(&if_.cond, ctx)?; [INFO] [stdout] | --- ---- ------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 272 | let (ctx, conseq, conseq_ty, conseq_cs) = self.check(&if_.conseq, ctx)?; [INFO] [stdout] | --- ------ --------- --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 273 | let (ctx, alter, alter_ty, alter_cs) = self.check(&if_.alter, ctx)?; [INFO] [stdout] | --- ----- -------- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 274 | [INFO] [stdout] 275 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 282 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 283 | [INFO] [stdout] 284 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 285 | | ctx.apply_subst(&subst), [INFO] [stdout] 286 | | If { [INFO] [stdout] 287 | | cond, [INFO] [stdout] ... | [INFO] [stdout] 292 | | cs, [INFO] [stdout] 293 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/ast.rs:384:19 [INFO] [stdout] | [INFO] [stdout] 377 | vty: Option, [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 378 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 379 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 384 | expr: expr.into(), [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/lang/ast.rs:385:19 [INFO] [stdout] | [INFO] [stdout] 377 | vty: Option, [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 378 | expr: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 379 | body: impl Into>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 385 | body: body.into(), [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/lang/ast.rs:409:18 [INFO] [stdout] | [INFO] [stdout] 407 | pub(crate) fn new(fst: impl Into>, snd: impl Into>, rest: Vec) -> Self { [INFO] [stdout] | ------------------------ ------------------------ -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 408 | Self { [INFO] [stdout] 409 | fst: fst.into(), [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/lang/ast.rs:410:18 [INFO] [stdout] | [INFO] [stdout] 407 | pub(crate) fn new(fst: impl Into>, snd: impl Into>, rest: Vec) -> Self { [INFO] [stdout] | ------------------------ ------------------------ -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 410 | snd: snd.into(), [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/lang/type_checker.rs:319:12 [INFO] [stdout] | [INFO] [stdout] 298 | vars: NonEmptyVec, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 299 | body: &Ast, [INFO] [stdout] 300 | mut ctx: Ctx, [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 301 | ) -> Result<(Ctx, Lambda, Type, ConstrSet)> { [INFO] [stdout] 302 | let rib = vars.as_ref().map(|v| { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 308 | let (mut ctx, body, mut ty, cs) = self.check(body, ctx)?; [INFO] [stdout] | --- ---- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 309 | [INFO] [stdout] 310 | let rib = ctx.shrink()?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 311 | let mut rvec = rib.into_vec(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 318 | let lam = Lambda { vars, body }; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 319 | Ok((ctx.apply_subst(&subst), lam, ty.apply(&subst), cs)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/ast.rs:433:20 [INFO] [stdout] | [INFO] [stdout] 430 | pub(crate) fn new(index: usize, tuple: impl Into>) -> Self { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 433 | tuple: tuple.into(), [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/lang/type_checker.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 322 | fn check_let(&self, let_: &ast::Let, ctx: Ctx) -> Result<(Ctx, Let, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 323 | let (mut ctx, expr, expr_ty, mut cs) = self.check(&let_.expr, ctx)?; [INFO] [stdout] | --- ---- ------- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 324 | [INFO] [stdout] 325 | let pat = let_.pat.map(Variable::local); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 326 | let (rib, match_cs) = Self::match_pattern(&pat, expr_ty, &ctx)?; [INFO] [stdout] | --- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 327 | ctx.extend(rib); [INFO] [stdout] 328 | let (mut ctx, body, body_ty, body_cs) = self.check(&let_.body, ctx)?; [INFO] [stdout] | --- ---- ------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 333 | Ok((ctx, Let { pat, expr, body }, body_ty, cs)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/interp.rs:79:28 [INFO] [stdout] | [INFO] [stdout] 78 | let val = lookup(&var, env)?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 79 | Ok((var, val)) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 336 | fn check_tuple(&self, tuple: &ast::Tuple, ctx: Ctx) -> Result<(Ctx, Tuple, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 337 | let (ctx, fst, fst_ty, cs1) = self.check(&tuple.fst, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 338 | let (ctx, snd, snd_ty, cs2) = self.check(&tuple.snd, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 339 | [INFO] [stdout] 340 | let mut css = ConstrSet::new(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 343 | let (ctx, rest, tys, css) = tuple.rest.iter().try_fold( [INFO] [stdout] | --- ---- --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 354 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 355 | | ctx, [INFO] [stdout] 356 | | Tuple { fst, snd, rest }, [INFO] [stdout] 357 | | Type::Tuple(Box::new(fst_ty), Box::new(snd_ty), tys), [INFO] [stdout] 358 | | css, [INFO] [stdout] 359 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/interp.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 243 | let sterm = parser.parse()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 244 | let (env, ctx) = self.extract(); [INFO] [stdout] | --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 245 | let checker = TypeChecker::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 246 | let (term, ttype) = checker.typecheck(&sterm, ctx)?; [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 247 | let val = Self::eval_term(&term, &env)?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 248 | Ok((val.as_ref().clone(), ttype)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:350:32 [INFO] [stdout] | [INFO] [stdout] 345 | |(ctx, mut ts, mut tys, mut css), ast| { [INFO] [stdout] | ------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 346 | let (ctx, t, ty, cs) = self.check(ast, ctx)?; [INFO] [stdout] | --- - -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | Ok::<_, Error>((ctx, ts, tys, css)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:394:12 [INFO] [stdout] | [INFO] [stdout] 365 | ctx: Ctx, [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 366 | ) -> Result<(Ctx, TupleRef, Type, ConstrSet)> { [INFO] [stdout] 367 | let (ctx, tuple, tuple_ty, mut cs) = self.check(&tuple_ref.tuple, ctx)?; [INFO] [stdout] | --- ----- -------- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 372 | let fst = Type::Var(Variable::local("T")); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 373 | let snd = Type::Var(Variable::local("T")); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 374 | let len = (index + 1).saturating_sub(2); [INFO] [stdout] 375 | let mut rest = Vec::with_capacity(len); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 380 | let ref_ty = if index == 0 { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 388 | let syn_ty = Type::Tuple(Box::new(fst), Box::new(snd), rest); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 392 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 393 | [INFO] [stdout] 394 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 395 | | ctx.apply_subst(&subst), [INFO] [stdout] 396 | | TupleRef { index, tuple }, [INFO] [stdout] 397 | | ref_ty.apply(&subst), [INFO] [stdout] 398 | | cs, [INFO] [stdout] 399 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:156:20 [INFO] [stdout] | [INFO] [stdout] 154 | fn new(input: I, context: String) -> Lexer { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 155 | Lexer { [INFO] [stdout] 156 | input: input.peekable(), [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/lang/type_checker.rs:438:54 [INFO] [stdout] | [INFO] [stdout] 438 | ... .map_or(true, |(_, ts)| !ts.ptype.vars().contains(v)) [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/lang/type_checker.rs:507:12 [INFO] [stdout] | [INFO] [stdout] 505 | pub fn typecheck(&self, ast: &Ast, ctx: Ctx) -> Result<(Rc, Type)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 506 | let (_, term, ty, _) = self.check(ast, ctx)?; [INFO] [stdout] | ---- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 507 | Ok((term, ty)) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:167:21 [INFO] [stdout] | [INFO] [stdout] 162 | fn err>>(&self, msg: S) -> Error { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 167 | source: None, [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/lang/type_checker.rs:749:20 [INFO] [stdout] | [INFO] [stdout] 747 | pub fn new_var(name: impl Into) -> Self { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 748 | TypeScheme { [INFO] [stdout] 749 | ptype: Type::Var(Variable::local(name)), [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/lang/type_checker.rs:764:9 [INFO] [stdout] | [INFO] [stdout] 763 | fn apply_subst(self, subst: &TypeSubst) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 764 | / self.0 [INFO] [stdout] 765 | | .into_iter() [INFO] [stdout] 766 | | .map(|rib| { [INFO] [stdout] 767 | | rib.map(|(var, mut ts)| { [INFO] [stdout] ... | [INFO] [stdout] 770 | | }) [INFO] [stdout] 771 | | }) [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/lang/type_checker.rs:805:14 [INFO] [stdout] | [INFO] [stdout] 804 | fn from(rib: Rib) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 805 | Self(VecDeque::from([rib])) [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/lang/parser.rs:510:21 [INFO] [stdout] | [INFO] [stdout] 505 | pub fn new(ctx: &'ctx mut ParserCtx, input: I, input_ctx: String) -> Parser<'ctx, I> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 510 | tokens: Lexer::new(input, input_ctx), [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/lang/type_checker.rs:811:14 [INFO] [stdout] | [INFO] [stdout] 810 | fn from_iter>(iter: T) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 811 | Self(VecDeque::from_iter(iter)) [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/lang/parser.rs:515:9 [INFO] [stdout] | [INFO] [stdout] 514 | fn build_ast(&self, builder: AstBuilder) -> Result { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 515 | / builder [INFO] [stdout] 516 | | .with_context(&self.tokens.context) [INFO] [stdout] 517 | | .build() [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/lang/parser.rs:522:25 [INFO] [stdout] | [INFO] [stdout] 522 | source: Some(Box::new(err)), [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/lang/parser.rs:499:21 [INFO] [stdout] | [INFO] [stdout] 499 | source: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 541 | .ok_or_else(|| parse_error!(self, "premature end of input")) [INFO] [stdout] | -------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: this error originates in the macro `parse_error` (in Nightly builds, run with -Z macro-backtrace for more info) [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/lang/parser.rs:499:21 [INFO] [stdout] | [INFO] [stdout] 499 | source: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 550 | .ok_or_else(|| parse_error!(self, "unexpected end of input")) [INFO] [stdout] | --------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: this error originates in the macro `parse_error` (in Nightly builds, run with -Z macro-backtrace for more info) [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/lang/parser.rs:604:24 [INFO] [stdout] | [INFO] [stdout] 597 | let term1 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 598 | self.consume_token(Token::Then)?; [INFO] [stdout] 599 | let term2 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 600 | self.consume_token(Token::Else)?; [INFO] [stdout] 601 | let term3 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 604 | self.build_ast(ast::new_if(term1, term2, term3).with_span(begin, end)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:616:24 [INFO] [stdout] | [INFO] [stdout] 611 | let vars = self.parse_unique_identifiers()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 612 | self.consume_token(Token::ThickArrow)?; [INFO] [stdout] 613 | let body = self.parse_term()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 616 | self.build_ast(ast::new_lambda(vars, body).with_span(begin, end)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:625:15 [INFO] [stdout] | [INFO] [stdout] 623 | let pat = self.parse_pattern()?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 624 | let tok = self.peek_token()?; [INFO] [stdout] 625 | match (pat, tok) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:673:24 [INFO] [stdout] | [INFO] [stdout] 660 | let vty = if let Token::Colon = self.peek_token()? { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 668 | let term1 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 669 | self.consume_token(Token::In)?; [INFO] [stdout] 670 | let term2 = self.parse_term()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 673 | self.build_ast(ast::new_letrec(var, vty, term1, term2).with_span(begin, end)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/parser.rs:499:21 [INFO] [stdout] | [INFO] [stdout] 499 | source: None, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 715 | .ok_or_else(|| parse_error!(self, "unknown operator {op} found",))?; [INFO] [stdout] | -------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: this error originates in the macro `parse_error` (in Nightly builds, run with -Z macro-backtrace for more info) [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/lang/term.rs:135:52 [INFO] [stdout] | [INFO] [stdout] 135 | let fvs = rest.iter().flat_map(|t| t.free_vars().into_iter()); [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/lang/type_checker.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn check(&self, ast: &Ast, ctx: Ctx) -> Result<(Ctx, Rc, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 102 | let (kind, ctx, ty, cs) = match &ast.kind { [INFO] [stdout] | ---- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 107 | let (var, ts) = ctx.find(|v| v.name() == name).cloned().ok_or_else(|| { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 112 | let subst = ts [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 126 | let vars = vars.as_ref().map(Variable::local); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 127 | let (ctx, lam, ty, cs) = self.check_lambda(vars, body, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 131 | let (ctx, app, ty, cs) = self.check_app(app, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 135 | let (ctx, if_, ty, cs) = self.check_if(if_, ctx)?; [INFO] [stdout] | --- --- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 139 | let (ctx, let_, ty, cs) = self.check_let(let_, ctx)?; [INFO] [stdout] | --- ---- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 144 | let var_type = letrec [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 148 | let ts = TypeScheme::new(var_type.clone()); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 149 | [INFO] [stdout] 150 | let mut ctx = ctx; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 151 | ctx.extend_one(var.clone(), ts); [INFO] [stdout] 152 | let (ctx, expr, expr_type, expr_cs) = self.check(&letrec.expr, ctx)?; [INFO] [stdout] | --- ---- --------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 153 | let (mut ctx, body, body_type, body_cs) = self.check(&letrec.body, ctx)?; [INFO] [stdout] | --- ---- --------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 160 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 161 | [INFO] [stdout] 162 | let fix = Fix { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 166 | let expr = Rc::new(Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 170 | let pat = Pattern::Var(var); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 180 | let (ctx, tuple, ty, cs) = self.check_tuple(tuple, ctx)?; [INFO] [stdout] | --- ----- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 184 | let (ctx, tuple_ref, ty, cs) = self.check_tuple_ref(tuple_ref, ctx)?; [INFO] [stdout] | --- --------- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | let (ctx, bin_op, ty, cs) = self.check_bin_op(bin_op, ctx)?; [INFO] [stdout] | --- ------ -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 193 | let term = Rc::new(Term { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 198 | Ok((ctx, term, ty, cs)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 115 | .map(|v| (v, Type::Var(Variable::local("P")))) [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/lang/type_checker.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 201 | pub fn check_app(&self, app: &ast::App, ctx: Ctx) -> Result<(Ctx, App, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 202 | let (ctx, oper, ty1, cs1) = self.check(&app.oper, ctx)?; [INFO] [stdout] | --- ---- --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 205 | let (ctx, first, ty2, cs2) = self.check(first, ctx)?; [INFO] [stdout] | --- ----- --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 206 | [INFO] [stdout] 207 | let mut args = NonEmptyVec::new(first); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 208 | [INFO] [stdout] 209 | let mut tys = VecDeque::new(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 212 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 216 | let mut ctx = ctx; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 225 | let var = Type::Var(Variable::local("Y")); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 226 | let mut func_ty = var.clone(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 232 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 233 | [INFO] [stdout] 234 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 235 | | ctx.apply_subst(&subst), [INFO] [stdout] 236 | | App { oper, args }, [INFO] [stdout] 237 | | var.apply(&subst), [INFO] [stdout] 238 | | cs, [INFO] [stdout] 239 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:262:12 [INFO] [stdout] | [INFO] [stdout] 242 | fn check_bin_op(&self, bin_op: &ast::BinOp, ctx: Ctx) -> Result<(Ctx, BinOp, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 243 | let (ctx, lhs, lhs_ty, cs1) = self.check(&bin_op.lhs, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 244 | let (ctx, rhs, rhs_ty, cs2) = self.check(&bin_op.rhs, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 247 | let info = self [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 254 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 261 | [INFO] [stdout] 262 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 263 | | ctx.apply_subst(&subst), [INFO] [stdout] 264 | | BinOp { oper, lhs, rhs }, [INFO] [stdout] 265 | | info.ttype, [INFO] [stdout] 266 | | cs, [INFO] [stdout] 267 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:284:12 [INFO] [stdout] | [INFO] [stdout] 270 | fn check_if(&self, if_: &ast::If, ctx: Ctx) -> Result<(Ctx, If, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 271 | let (ctx, cond, cond_ty, cond_cs) = self.check(&if_.cond, ctx)?; [INFO] [stdout] | --- ---- ------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 272 | let (ctx, conseq, conseq_ty, conseq_cs) = self.check(&if_.conseq, ctx)?; [INFO] [stdout] | --- ------ --------- --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 273 | let (ctx, alter, alter_ty, alter_cs) = self.check(&if_.alter, ctx)?; [INFO] [stdout] | --- ----- -------- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 274 | [INFO] [stdout] 275 | let mut cs = ConstrSet::new(); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 282 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 283 | [INFO] [stdout] 284 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 285 | | ctx.apply_subst(&subst), [INFO] [stdout] 286 | | If { [INFO] [stdout] 287 | | cond, [INFO] [stdout] ... | [INFO] [stdout] 292 | | cs, [INFO] [stdout] 293 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:319:12 [INFO] [stdout] | [INFO] [stdout] 298 | vars: NonEmptyVec, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 299 | body: &Ast, [INFO] [stdout] 300 | mut ctx: Ctx, [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 301 | ) -> Result<(Ctx, Lambda, Type, ConstrSet)> { [INFO] [stdout] 302 | let rib = vars.as_ref().map(|v| { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 308 | let (mut ctx, body, mut ty, cs) = self.check(body, ctx)?; [INFO] [stdout] | --- ---- -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 309 | [INFO] [stdout] 310 | let rib = ctx.shrink()?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 311 | let mut rvec = rib.into_vec(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 318 | let lam = Lambda { vars, body }; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 319 | Ok((ctx.apply_subst(&subst), lam, ty.apply(&subst), cs)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 322 | fn check_let(&self, let_: &ast::Let, ctx: Ctx) -> Result<(Ctx, Let, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 323 | let (mut ctx, expr, expr_ty, mut cs) = self.check(&let_.expr, ctx)?; [INFO] [stdout] | --- ---- ------- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 324 | [INFO] [stdout] 325 | let pat = let_.pat.map(Variable::local); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 326 | let (rib, match_cs) = Self::match_pattern(&pat, expr_ty, &ctx)?; [INFO] [stdout] | --- -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 327 | ctx.extend(rib); [INFO] [stdout] 328 | let (mut ctx, body, body_ty, body_cs) = self.check(&let_.body, ctx)?; [INFO] [stdout] | --- ---- ------- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 333 | Ok((ctx, Let { pat, expr, body }, body_ty, cs)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 336 | fn check_tuple(&self, tuple: &ast::Tuple, ctx: Ctx) -> Result<(Ctx, Tuple, Type, ConstrSet)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 337 | let (ctx, fst, fst_ty, cs1) = self.check(&tuple.fst, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 338 | let (ctx, snd, snd_ty, cs2) = self.check(&tuple.snd, ctx)?; [INFO] [stdout] | --- --- ------ --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 339 | [INFO] [stdout] 340 | let mut css = ConstrSet::new(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 343 | let (ctx, rest, tys, css) = tuple.rest.iter().try_fold( [INFO] [stdout] | --- ---- --- --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 354 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 355 | | ctx, [INFO] [stdout] 356 | | Tuple { fst, snd, rest }, [INFO] [stdout] 357 | | Type::Tuple(Box::new(fst_ty), Box::new(snd_ty), tys), [INFO] [stdout] 358 | | css, [INFO] [stdout] 359 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:350:32 [INFO] [stdout] | [INFO] [stdout] 345 | |(ctx, mut ts, mut tys, mut css), ast| { [INFO] [stdout] | ------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 346 | let (ctx, t, ty, cs) = self.check(ast, ctx)?; [INFO] [stdout] | --- - -- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | Ok::<_, Error>((ctx, ts, tys, css)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:394:12 [INFO] [stdout] | [INFO] [stdout] 365 | ctx: Ctx, [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 366 | ) -> Result<(Ctx, TupleRef, Type, ConstrSet)> { [INFO] [stdout] 367 | let (ctx, tuple, tuple_ty, mut cs) = self.check(&tuple_ref.tuple, ctx)?; [INFO] [stdout] | --- ----- -------- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | | [INFO] [stdout] | | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 372 | let fst = Type::Var(Variable::local("T")); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 373 | let snd = Type::Var(Variable::local("T")); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 374 | let len = (index + 1).saturating_sub(2); [INFO] [stdout] 375 | let mut rest = Vec::with_capacity(len); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 380 | let ref_ty = if index == 0 { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 388 | let syn_ty = Type::Tuple(Box::new(fst), Box::new(snd), rest); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 392 | let subst = cs.unify()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 393 | [INFO] [stdout] 394 | Ok(( [INFO] [stdout] | ____________^ [INFO] [stdout] 395 | | ctx.apply_subst(&subst), [INFO] [stdout] 396 | | TupleRef { index, tuple }, [INFO] [stdout] 397 | | ref_ty.apply(&subst), [INFO] [stdout] 398 | | cs, [INFO] [stdout] 399 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:438:54 [INFO] [stdout] | [INFO] [stdout] 438 | ... .map_or(true, |(_, ts)| !ts.ptype.vars().contains(v)) [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/lang/type_checker.rs:507:12 [INFO] [stdout] | [INFO] [stdout] 505 | pub fn typecheck(&self, ast: &Ast, ctx: Ctx) -> Result<(Rc, Type)> { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 506 | let (_, term, ty, _) = self.check(ast, ctx)?; [INFO] [stdout] | ---- -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 507 | Ok((term, ty)) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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/lang/type_checker.rs:749:20 [INFO] [stdout] | [INFO] [stdout] 747 | pub fn new_var(name: impl Into) -> Self { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 748 | TypeScheme { [INFO] [stdout] 749 | ptype: Type::Var(Variable::local(name)), [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/lang/type_checker.rs:764:9 [INFO] [stdout] | [INFO] [stdout] 763 | fn apply_subst(self, subst: &TypeSubst) -> Self { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 764 | / self.0 [INFO] [stdout] 765 | | .into_iter() [INFO] [stdout] 766 | | .map(|rib| { [INFO] [stdout] 767 | | rib.map(|(var, mut ts)| { [INFO] [stdout] ... | [INFO] [stdout] 770 | | }) [INFO] [stdout] 771 | | }) [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/lang/type_checker.rs:805:14 [INFO] [stdout] | [INFO] [stdout] 804 | fn from(rib: Rib) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 805 | Self(VecDeque::from([rib])) [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/lang/type_checker.rs:811:14 [INFO] [stdout] | [INFO] [stdout] 810 | fn from_iter>(iter: T) -> Self { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 811 | Self(VecDeque::from_iter(iter)) [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 64 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 64 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `mirage` (bin "mirage") due to 65 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `mirage` (bin "mirage" test) due to 65 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "4d99d0d353270b0fc2bb386d612404c9a832477a3941369bd2222863b5ef364b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4d99d0d353270b0fc2bb386d612404c9a832477a3941369bd2222863b5ef364b", kill_on_drop: false }` [INFO] [stdout] 4d99d0d353270b0fc2bb386d612404c9a832477a3941369bd2222863b5ef364b