[INFO] cloning repository https://github.com/bdrobinson/monkey [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bdrobinson/monkey" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbdrobinson%2Fmonkey", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbdrobinson%2Fmonkey'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fcaba33eb707d70628742426c40169022731f5ce [INFO] checking bdrobinson/monkey/fcaba33eb707d70628742426c40169022731f5ce 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%2Fbdrobinson%2Fmonkey" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/bdrobinson/monkey 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/bdrobinson/monkey [INFO] finished tweaking git repo https://github.com/bdrobinson/monkey [INFO] tweaked toml for git repo https://github.com/bdrobinson/monkey written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/bdrobinson/monkey 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-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] d4c2e89eded12d42e07bf7bbcc101ab7abd932736d0912f6d9c9370b35b6ea00 [INFO] running `Command { std: "docker" "start" "-a" "d4c2e89eded12d42e07bf7bbcc101ab7abd932736d0912f6d9c9370b35b6ea00", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d4c2e89eded12d42e07bf7bbcc101ab7abd932736d0912f6d9c9370b35b6ea00", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d4c2e89eded12d42e07bf7bbcc101ab7abd932736d0912f6d9c9370b35b6ea00", kill_on_drop: false }` [INFO] [stdout] d4c2e89eded12d42e07bf7bbcc101ab7abd932736d0912f6d9c9370b35b6ea00 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 361b7f385863695fda4653145c3e9b6c4b03136d2cae979d2c1a028a93b67e74 [INFO] running `Command { std: "docker" "start" "-a" "361b7f385863695fda4653145c3e9b6c4b03136d2cae979d2c1a028a93b67e74", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.10 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling libc v0.2.70 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking strsim v0.10.0 [INFO] [stderr] Checking difference v2.0.0 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking termcolor v1.1.0 [INFO] [stderr] Checking os_str_bytes v2.3.1 [INFO] [stderr] Checking appendlist v1.4.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling proc-macro-error-attr v0.4.12 [INFO] [stderr] Compiling proc-macro-error v0.4.12 [INFO] [stderr] Checking pretty_assertions v0.6.1 [INFO] [stderr] Compiling indexmap v1.3.2 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling clap_derive v3.0.0-beta.1 [INFO] [stderr] Checking clap v3.0.0-beta.1 [INFO] [stderr] Checking monkey v0.1.0 (/opt/rustwide/workdir) [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/compiler/mod.rs:114:24 [INFO] [stdout] | [INFO] [stdout] 111 | fn bytecode(self) -> Bytecode<'a> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 114 | constants: self.constants.into_iter().map(Rc::new).collect(), [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/eval/mod.rs:62:58 [INFO] [stdout] | [INFO] [stdout] 62 | Ok(evaluated_block.unwrap_or_else(|| Rc::new(Object::Null))) [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/eval/mod.rs:88:54 [INFO] [stdout] | [INFO] [stdout] 88 | .map(|opt| opt.unwrap_or_else(|| Rc::new(Object::Null))), [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/eval/mod.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 106 | args: Vec>>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 109 | parent_env: Rc>>, [INFO] [stdout] | ---------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 118 | let mut call_env = Environment::new_enclosed(Rc::clone(&parent_env)); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 123 | let result = eval_statements(&body.statements, Rc::new(RefCell::new(call_env)))?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 124 | Ok(result.unwrap_or_else(|| Rc::new(Object::Null))) [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/eval/mod.rs:124:41 [INFO] [stdout] | [INFO] [stdout] 124 | Ok(result.unwrap_or_else(|| Rc::new(Object::Null))) [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/eval/mod.rs:194:21 [INFO] [stdout] | [INFO] [stdout] 194 | .or_else(|| get_builtin_fn(identifier).map(|f| Rc::new(Object::BuiltinFunction(f)))) [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/eval/mod.rs:194:64 [INFO] [stdout] | [INFO] [stdout] 194 | .or_else(|| get_builtin_fn(identifier).map(|f| Rc::new(Object::BuiltinFunction(f)))) [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/object/environment.rs:38:24 [INFO] [stdout] | [INFO] [stdout] 38 | .map(|env| env.borrow().get(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/parser/mod.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 109 | let expr = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 115 | Ok(ast::Statement::Return { value: expr }) [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/parser/mod.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 141 | let expr = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 146 | Ok(ast::Statement::Let { [INFO] [stdout] | ____________^ [INFO] [stdout] 147 | | name: identifier_name, [INFO] [stdout] 148 | | right: expr, [INFO] [stdout] 149 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________| [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/parser/mod.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 173 | let body = self.parse_block_statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 174 | [INFO] [stdout] 175 | Ok(ast::Expression::FnLiteral { param_names, body }) [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/parser/mod.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 242 | let condition = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 248 | let consequence = self.parse_block_statement()?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 249 | [INFO] [stdout] 250 | let alternative = if Token::Else == 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] 257 | Ok(ast::Expression::If { [INFO] [stdout] | ____________^ [INFO] [stdout] 258 | | condition: Box::new(condition), [INFO] [stdout] 259 | | consequence, [INFO] [stdout] 260 | | alternative, [INFO] [stdout] 261 | | }) [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] | [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/parser/mod.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 269 | let mut statements: Vec = vec![]; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 275 | Ok(ast::BlockStatement { statements }) [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/parser/mod.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 279 | let expression = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 285 | Ok(ast::Statement::Expression { expression }) [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/parser/mod.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 295 | let right = self.parse_expression(Precedence::PREFIX)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 296 | Ok(ast::Expression::Prefix { [INFO] [stdout] | ____________^ [INFO] [stdout] 297 | | operator, [INFO] [stdout] 298 | | right: Box::new(right), [INFO] [stdout] 299 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________| [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 15 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `monkey` (lib) due to 16 previous errors [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/compiler/mod.rs:114:24 [INFO] [stdout] | [INFO] [stdout] 111 | fn bytecode(self) -> Bytecode<'a> { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 114 | constants: self.constants.into_iter().map(Rc::new).collect(), [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/eval/mod.rs:62:58 [INFO] [stdout] | [INFO] [stdout] 62 | Ok(evaluated_block.unwrap_or_else(|| Rc::new(Object::Null))) [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/eval/mod.rs:88:54 [INFO] [stdout] | [INFO] [stdout] 88 | .map(|opt| opt.unwrap_or_else(|| Rc::new(Object::Null))), [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/eval/mod.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 106 | args: Vec>>, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 109 | parent_env: Rc>>, [INFO] [stdout] | ---------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 118 | let mut call_env = Environment::new_enclosed(Rc::clone(&parent_env)); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 123 | let result = eval_statements(&body.statements, Rc::new(RefCell::new(call_env)))?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 124 | Ok(result.unwrap_or_else(|| Rc::new(Object::Null))) [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/eval/mod.rs:124:41 [INFO] [stdout] | [INFO] [stdout] 124 | Ok(result.unwrap_or_else(|| Rc::new(Object::Null))) [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/eval/mod.rs:194:21 [INFO] [stdout] | [INFO] [stdout] 194 | .or_else(|| get_builtin_fn(identifier).map(|f| Rc::new(Object::BuiltinFunction(f)))) [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/eval/mod.rs:194:64 [INFO] [stdout] | [INFO] [stdout] 194 | .or_else(|| get_builtin_fn(identifier).map(|f| Rc::new(Object::BuiltinFunction(f)))) [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/object/environment.rs:38:24 [INFO] [stdout] | [INFO] [stdout] 38 | .map(|env| env.borrow().get(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/parser/mod.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 109 | let expr = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 115 | Ok(ast::Statement::Return { value: expr }) [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/parser/mod.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 141 | let expr = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 146 | Ok(ast::Statement::Let { [INFO] [stdout] | ____________^ [INFO] [stdout] 147 | | name: identifier_name, [INFO] [stdout] 148 | | right: expr, [INFO] [stdout] 149 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________| [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/parser/mod.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 173 | let body = self.parse_block_statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 174 | [INFO] [stdout] 175 | Ok(ast::Expression::FnLiteral { param_names, body }) [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/parser/mod.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 242 | let condition = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 248 | let consequence = self.parse_block_statement()?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 249 | [INFO] [stdout] 250 | let alternative = if Token::Else == 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] 257 | Ok(ast::Expression::If { [INFO] [stdout] | ____________^ [INFO] [stdout] 258 | | condition: Box::new(condition), [INFO] [stdout] 259 | | consequence, [INFO] [stdout] 260 | | alternative, [INFO] [stdout] 261 | | }) [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] | [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/parser/mod.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 269 | let mut statements: Vec = vec![]; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 275 | Ok(ast::BlockStatement { statements }) [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/parser/mod.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 279 | let expression = self.parse_expression(Precedence::LOWEST)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 285 | Ok(ast::Statement::Expression { expression }) [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/parser/mod.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 295 | let right = self.parse_expression(Precedence::PREFIX)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 296 | Ok(ast::Expression::Prefix { [INFO] [stdout] | ____________^ [INFO] [stdout] 297 | | operator, [INFO] [stdout] 298 | | right: Box::new(right), [INFO] [stdout] 299 | | }) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________| [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 15 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `monkey` (lib test) due to 16 previous errors [INFO] running `Command { std: "docker" "inspect" "361b7f385863695fda4653145c3e9b6c4b03136d2cae979d2c1a028a93b67e74", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "361b7f385863695fda4653145c3e9b6c4b03136d2cae979d2c1a028a93b67e74", kill_on_drop: false }` [INFO] [stdout] 361b7f385863695fda4653145c3e9b6c4b03136d2cae979d2c1a028a93b67e74