[INFO] cloning repository https://github.com/colecarley/jive [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/colecarley/jive" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcolecarley%2Fjive", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcolecarley%2Fjive'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e9a3c508629774d3b8336b1f30cc179f8b47b4a7 [INFO] checking colecarley/jive/e9a3c508629774d3b8336b1f30cc179f8b47b4a7 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%2Fcolecarley%2Fjive" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/colecarley/jive 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/colecarley/jive [INFO] finished tweaking git repo https://github.com/colecarley/jive [INFO] tweaked toml for git repo https://github.com/colecarley/jive written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/colecarley/jive 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-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 5b11de7c977272046f556f9d544e62cf2b0902f81c83da84458776c00106940f [INFO] running `Command { std: "docker" "start" "-a" "5b11de7c977272046f556f9d544e62cf2b0902f81c83da84458776c00106940f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5b11de7c977272046f556f9d544e62cf2b0902f81c83da84458776c00106940f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b11de7c977272046f556f9d544e62cf2b0902f81c83da84458776c00106940f", kill_on_drop: false }` [INFO] [stdout] 5b11de7c977272046f556f9d544e62cf2b0902f81c83da84458776c00106940f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 9e81c1cf8f6a31457688d3fb188dcc3972ebd7f571f8748498e48d24c9b964ab [INFO] running `Command { std: "docker" "start" "-a" "9e81c1cf8f6a31457688d3fb188dcc3972ebd7f571f8748498e48d24c9b964ab", kill_on_drop: false }` [INFO] [stderr] Checking jive v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field `arity` is never read [INFO] [stdout] --> src/visitors/interpreter/callable.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Function { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 16 | pub arity: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/visitors/interpreter/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 109 | let (left, _) = equality.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 110 | let (right, _) = equality.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 113 | / match equality.operator.token_type { [INFO] [stdout] 114 | | TokenType::EqualEqual => Value::Boolean(Box::new(left == right)), [INFO] [stdout] 115 | | TokenType::BangEqual => Value::Boolean(Box::new(left != right)), [INFO] [stdout] 116 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 117 | | }, [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/visitors/interpreter/mod.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 123 | let (left, _) = comparison.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 124 | let (right, _) = comparison.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 127 | / match comparison.operator.token_type { [INFO] [stdout] 128 | | TokenType::Greater => Value::Boolean(Box::new(left > right)), [INFO] [stdout] 129 | | TokenType::GreaterEqual => Value::Boolean(Box::new(left >= right)), [INFO] [stdout] 130 | | TokenType::Less => Value::Boolean(Box::new(left < right)), [INFO] [stdout] 131 | | TokenType::LessEqual => Value::Boolean(Box::new(left <= right)), [INFO] [stdout] 132 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 133 | | }, [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/visitors/interpreter/mod.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 139 | let (left, _) = term.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 140 | let (right, _) = term.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 141 | ( [INFO] [stdout] 142 | / match term.operator.token_type { [INFO] [stdout] 143 | | TokenType::Plus => left + right, [INFO] [stdout] 144 | | TokenType::Minus => left - right, [INFO] [stdout] 145 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 146 | | }, [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/visitors/interpreter/mod.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 152 | let (left, _) = factor.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 153 | let (right, _) = factor.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 154 | ( [INFO] [stdout] 155 | / match factor.operator.token_type { [INFO] [stdout] 156 | | TokenType::Star => left * right, [INFO] [stdout] 157 | | TokenType::Slash => left / right, [INFO] [stdout] 158 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 159 | | }, [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/visitors/interpreter/mod.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 165 | let (value, _) = unary.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 166 | ( [INFO] [stdout] 167 | / match unary.operator.token_type { [INFO] [stdout] 168 | | TokenType::Minus => -value, [INFO] [stdout] 169 | | TokenType::Bang => { [INFO] [stdout] 170 | | Value::Boolean(Box::new(value == Value::Boolean(Box::new(false)))) [INFO] [stdout] 171 | | } [INFO] [stdout] 172 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 173 | | }, [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/visitors/interpreter/mod.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 205 | let (value, _) = print_statement.expression.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 241 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:278:10 [INFO] [stdout] | [INFO] [stdout] 264 | let new_environment = Rc::new(RefCell::new(Environment::new())); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 278 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:295:10 [INFO] [stdout] | [INFO] [stdout] 282 | let (condition, _) = if_statement.condition.accept(self); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 295 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:392:10 [INFO] [stdout] | [INFO] [stdout] 378 | let function = Function { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 388 | let value = Value::Function(Box::new(function)); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 392 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:422:10 [INFO] [stdout] | [INFO] [stdout] 409 | let new_environment = Rc::new(RefCell::new(Environment::new())); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 415 | let (value, _) = with_statement.value.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 422 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:501:10 [INFO] [stdout] | [INFO] [stdout] 493 | let mut map = HashMap::::new(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 501 | (Value::Record(Rc::new(RefCell::new(map))), false) [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/visitors/interpreter/callable.rs:133:40 [INFO] [stdout] | [INFO] [stdout] 133 | .map(|c| Value::String(Box::new(c.to_string()))) [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/visitors/interpreter/callable.rs:152:48 [INFO] [stdout] | [INFO] [stdout] 152 | .map(|v| Value::Number(Box::new(v as f64))) [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/visitors/interpreter/callable.rs:178:44 [INFO] [stdout] | [INFO] [stdout] 178 | .map(|v| Value::Number(Box::new(v as f64))) [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/visitors/interpreter/callable.rs:209:48 [INFO] [stdout] | [INFO] [stdout] 209 | .map(|v| Value::Number(Box::new(v as f64))) [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/visitors/interpreter/value.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 21 | fn add(self, other: Self) -> 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] 22 | match (self, other) { [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/visitors/interpreter/value.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 33 | fn sub(self, other: Self) -> 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] 34 | match (self, other) { [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/visitors/interpreter/value.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 44 | fn mul(self, other: Self) -> 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] 45 | match (self, other) { [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/visitors/interpreter/value.rs:56:15 [INFO] [stdout] | [INFO] [stdout] 55 | fn div(self, other: Self) -> 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] 56 | match (self, other) { [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 19 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `arity` is never read [INFO] [stdout] --> src/visitors/interpreter/callable.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Function { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 16 | pub arity: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `jive` (bin "jive" test) due to 20 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/visitors/interpreter/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 109 | let (left, _) = equality.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 110 | let (right, _) = equality.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 113 | / match equality.operator.token_type { [INFO] [stdout] 114 | | TokenType::EqualEqual => Value::Boolean(Box::new(left == right)), [INFO] [stdout] 115 | | TokenType::BangEqual => Value::Boolean(Box::new(left != right)), [INFO] [stdout] 116 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 117 | | }, [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/visitors/interpreter/mod.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 123 | let (left, _) = comparison.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 124 | let (right, _) = comparison.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 127 | / match comparison.operator.token_type { [INFO] [stdout] 128 | | TokenType::Greater => Value::Boolean(Box::new(left > right)), [INFO] [stdout] 129 | | TokenType::GreaterEqual => Value::Boolean(Box::new(left >= right)), [INFO] [stdout] 130 | | TokenType::Less => Value::Boolean(Box::new(left < right)), [INFO] [stdout] 131 | | TokenType::LessEqual => Value::Boolean(Box::new(left <= right)), [INFO] [stdout] 132 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 133 | | }, [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/visitors/interpreter/mod.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 139 | let (left, _) = term.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 140 | let (right, _) = term.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 141 | ( [INFO] [stdout] 142 | / match term.operator.token_type { [INFO] [stdout] 143 | | TokenType::Plus => left + right, [INFO] [stdout] 144 | | TokenType::Minus => left - right, [INFO] [stdout] 145 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 146 | | }, [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/visitors/interpreter/mod.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 152 | let (left, _) = factor.left.accept(self); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 153 | let (right, _) = factor.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 154 | ( [INFO] [stdout] 155 | / match factor.operator.token_type { [INFO] [stdout] 156 | | TokenType::Star => left * right, [INFO] [stdout] 157 | | TokenType::Slash => left / right, [INFO] [stdout] 158 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 159 | | }, [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/visitors/interpreter/mod.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 165 | let (value, _) = unary.right.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 166 | ( [INFO] [stdout] 167 | / match unary.operator.token_type { [INFO] [stdout] 168 | | TokenType::Minus => -value, [INFO] [stdout] 169 | | TokenType::Bang => { [INFO] [stdout] 170 | | Value::Boolean(Box::new(value == Value::Boolean(Box::new(false)))) [INFO] [stdout] 171 | | } [INFO] [stdout] 172 | | _ => panic!("Unexpected token type"), [INFO] [stdout] 173 | | }, [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/visitors/interpreter/mod.rs:241:10 [INFO] [stdout] | [INFO] [stdout] 205 | let (value, _) = print_statement.expression.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 241 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:278:10 [INFO] [stdout] | [INFO] [stdout] 264 | let new_environment = Rc::new(RefCell::new(Environment::new())); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 278 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:295:10 [INFO] [stdout] | [INFO] [stdout] 282 | let (condition, _) = if_statement.condition.accept(self); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 295 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:392:10 [INFO] [stdout] | [INFO] [stdout] 378 | let function = Function { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 388 | let value = Value::Function(Box::new(function)); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 392 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:422:10 [INFO] [stdout] | [INFO] [stdout] 409 | let new_environment = Rc::new(RefCell::new(Environment::new())); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 415 | let (value, _) = with_statement.value.accept(self); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 422 | (Value::Nil, false) [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/visitors/interpreter/mod.rs:501:10 [INFO] [stdout] | [INFO] [stdout] 493 | let mut map = HashMap::::new(); [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 501 | (Value::Record(Rc::new(RefCell::new(map))), false) [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/visitors/interpreter/callable.rs:133:40 [INFO] [stdout] | [INFO] [stdout] 133 | .map(|c| Value::String(Box::new(c.to_string()))) [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/visitors/interpreter/callable.rs:152:48 [INFO] [stdout] | [INFO] [stdout] 152 | .map(|v| Value::Number(Box::new(v as f64))) [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/visitors/interpreter/callable.rs:178:44 [INFO] [stdout] | [INFO] [stdout] 178 | .map(|v| Value::Number(Box::new(v as f64))) [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/visitors/interpreter/callable.rs:209:48 [INFO] [stdout] | [INFO] [stdout] 209 | .map(|v| Value::Number(Box::new(v as f64))) [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/visitors/interpreter/value.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 21 | fn add(self, other: Self) -> 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] 22 | match (self, other) { [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/visitors/interpreter/value.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 33 | fn sub(self, other: Self) -> 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] 34 | match (self, other) { [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/visitors/interpreter/value.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 44 | fn mul(self, other: Self) -> 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] 45 | match (self, other) { [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/visitors/interpreter/value.rs:56:15 [INFO] [stdout] | [INFO] [stdout] 55 | fn div(self, other: Self) -> 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] 56 | match (self, other) { [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 19 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `jive` (bin "jive") due to 20 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "9e81c1cf8f6a31457688d3fb188dcc3972ebd7f571f8748498e48d24c9b964ab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e81c1cf8f6a31457688d3fb188dcc3972ebd7f571f8748498e48d24c9b964ab", kill_on_drop: false }` [INFO] [stdout] 9e81c1cf8f6a31457688d3fb188dcc3972ebd7f571f8748498e48d24c9b964ab