[INFO] cloning repository https://github.com/bradford-hamilton/monkey-lang-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bradford-hamilton/monkey-lang-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbradford-hamilton%2Fmonkey-lang-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbradford-hamilton%2Fmonkey-lang-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9baab902d4f0d377b40c71d31fd1cd99d3b9baef [INFO] checking bradford-hamilton/monkey-lang-rs/9baab902d4f0d377b40c71d31fd1cd99d3b9baef 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%2Fbradford-hamilton%2Fmonkey-lang-rs" "/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/bradford-hamilton/monkey-lang-rs 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/bradford-hamilton/monkey-lang-rs [INFO] finished tweaking git repo https://github.com/bradford-hamilton/monkey-lang-rs [INFO] tweaked toml for git repo https://github.com/bradford-hamilton/monkey-lang-rs written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/bradford-hamilton/monkey-lang-rs 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] 203f489504670d6f87749d17c6872eb1ae91084ef7616c08d4d0304919cd699d [INFO] running `Command { std: "docker" "start" "-a" "203f489504670d6f87749d17c6872eb1ae91084ef7616c08d4d0304919cd699d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "203f489504670d6f87749d17c6872eb1ae91084ef7616c08d4d0304919cd699d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "203f489504670d6f87749d17c6872eb1ae91084ef7616c08d4d0304919cd699d", kill_on_drop: false }` [INFO] [stdout] 203f489504670d6f87749d17c6872eb1ae91084ef7616c08d4d0304919cd699d [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] 099e17858314ed0110f54981737512eed9027458ca2d684956b026b638c3399f [INFO] running `Command { std: "docker" "start" "-a" "099e17858314ed0110f54981737512eed9027458ca2d684956b026b638c3399f", kill_on_drop: false }` [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking monkey-lang-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/vm.rs:7:44 [INFO] [stdout] | [INFO] [stdout] 7 | Array, Boolean, Closure, CompiledFunc, Error, HashKey, HashMp, Integer, Null, Object, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Node` [INFO] [stdout] --> src/parser.rs:4:69 [INFO] [stdout] | [INFO] [stdout] 4 | IndexExpression, InfixExpression, IntegerLiteral, LetStatement, Node, PrefixExpression, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_builtin_by_name` is never used [INFO] [stdout] --> src/builtins.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn get_builtin_by_name(name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_string` is never used [INFO] [stdout] --> src/bytecode.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Instructions { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fmt_instruction` is never used [INFO] [stdout] --> src/bytecode.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn fmt_instruction(definition: &Definition, operands: Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_operands` is never used [INFO] [stdout] --> src/bytecode.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn read_operands(def: &Definition, ins: &[u8]) -> (Vec, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/bytecode.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 111 | struct Definition { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 112 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_u8` is never used [INFO] [stdout] --> src/bytecode.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 188 | impl Opcode { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 189 | pub fn to_u8(&self) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lookup` is never used [INFO] [stdout] --> src/bytecode.rs:194:4 [INFO] [stdout] | [INFO] [stdout] 194 | fn lookup(op: Opcode) -> Result<&'static Definition, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `store` and `outer` are never read [INFO] [stdout] --> src/environment.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Environment { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 8 | store: HashMap>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | outer: Option>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `new_enclosed`, `get`, and `set` are never used [INFO] [stdout] --> src/environment.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Environment { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new() -> Rc> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn new_enclosed(outer: Rc>) -> Rc> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn get(&self, name: &str) -> Option> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn set(&mut self, name: String, val: Rc) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `env` is never read [INFO] [stdout] --> src/object.rs:186:9 [INFO] [stdout] | [INFO] [stdout] 183 | pub struct Function { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 186 | pub env: Rc>, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/symbol_table.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl SymbolScope { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 20 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_with_global_state` and `last_popped_stack_element` are never used [INFO] [stdout] --> src/vm.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl<'a> VirtualMachine<'a> { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn new_with_global_state(bytecode: Bytecode<'a>, state: Vec>) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 286 | pub fn last_popped_stack_element(&self) -> Rc { [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/builtins.rs:16:19 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn new(func: F) -> Self [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 16 | func: Arc::new(func), [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/builtins.rs:250:13 [INFO] [stdout] | [INFO] [stdout] 211 | fn b_split(args: Vec>) -> Rc { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 240 | let split_result = str_arg [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 250 | Rc::new(Array { [INFO] [stdout] | _____________^ [INFO] [stdout] 251 | | elements: split_result, [INFO] [stdout] 252 | | }) [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/environment.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new_enclosed(outer: Rc>) -> Rc> { [INFO] [stdout] | ------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 21 | Rc::new(RefCell::new(Environment { [INFO] [stdout] | _________________^ [INFO] [stdout] 22 | | store: HashMap::new(), [INFO] [stdout] 23 | | outer: Some(outer), [INFO] [stdout] 24 | | })) [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/environment.rs:31:25 [INFO] [stdout] | [INFO] [stdout] 31 | .or_else(|| self.outer.as_ref()?.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.rs:415:14 [INFO] [stdout] | [INFO] [stdout] 414 | fn parse_call_expr(parser: &mut Parser, func: Box) -> Box { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 415 | Box::new(CallExpression { [INFO] [stdout] | ______________^ [INFO] [stdout] 416 | | token: parser.current_token.clone(), [INFO] [stdout] 417 | | func, [INFO] [stdout] 418 | | arguments: parser.parse_expression_list(TokenType::RightParen), [INFO] [stdout] 419 | | }) [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/vm.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 39 | let main_closure = Rc::new(Closure { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | let main_frame = Frame::new(main_closure, 0); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 44 | let mut frames = Vec::with_capacity(MAX_FRAMES as usize); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 50 | stack: Vec::with_capacity(STACK_SIZE as usize), [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/vm.rs:52:22 [INFO] [stdout] | [INFO] [stdout] 39 | let main_closure = Rc::new(Closure { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | let main_frame = Frame::new(main_closure, 0); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 44 | let mut frames = Vec::with_capacity(MAX_FRAMES as usize); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 52 | globals: Vec::with_capacity(GLOBALS_SIZE as usize), [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/vm.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 489 | let elements = self.stack[start_index..end_index].to_vec(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 490 | [INFO] [stdout] 491 | Rc::new(Array { elements }) [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/vm.rs:514:17 [INFO] [stdout] | [INFO] [stdout] 495 | let mut pairs: HashMap = HashMap::new(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 514 | Rc::new(HashMp { pairs }) [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 9 previous errors; 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `monkey-lang-rs` (bin "monkey-lang-rs") due to 10 previous errors; 14 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: method `to_string` is never used [INFO] [stdout] --> src/bytecode.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Instructions { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 13 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fmt_instruction` is never used [INFO] [stdout] --> src/bytecode.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn fmt_instruction(definition: &Definition, operands: Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_operands` is never used [INFO] [stdout] --> src/bytecode.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn read_operands(def: &Definition, ins: &[u8]) -> (Vec, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/bytecode.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 111 | struct Definition { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 112 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_u8` is never used [INFO] [stdout] --> src/bytecode.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 188 | impl Opcode { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 189 | pub fn to_u8(&self) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lookup` is never used [INFO] [stdout] --> src/bytecode.rs:194:4 [INFO] [stdout] | [INFO] [stdout] 194 | fn lookup(op: Opcode) -> Result<&'static Definition, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `env` is never read [INFO] [stdout] --> src/object.rs:186:9 [INFO] [stdout] | [INFO] [stdout] 183 | pub struct Function { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 186 | pub env: Rc>, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/symbol_table.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl SymbolScope { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 20 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_with_global_state` is never used [INFO] [stdout] --> src/vm.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl<'a> VirtualMachine<'a> { [INFO] [stdout] | --------------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn new_with_global_state(bytecode: Bytecode<'a>, state: Vec>) -> Self { [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/builtins.rs:16:19 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn new(func: F) -> Self [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 16 | func: Arc::new(func), [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/builtins.rs:250:13 [INFO] [stdout] | [INFO] [stdout] 211 | fn b_split(args: Vec>) -> Rc { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 240 | let split_result = str_arg [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 250 | Rc::new(Array { [INFO] [stdout] | _____________^ [INFO] [stdout] 251 | | elements: split_result, [INFO] [stdout] 252 | | }) [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/environment.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new_enclosed(outer: Rc>) -> Rc> { [INFO] [stdout] | ------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 21 | Rc::new(RefCell::new(Environment { [INFO] [stdout] | _________________^ [INFO] [stdout] 22 | | store: HashMap::new(), [INFO] [stdout] 23 | | outer: Some(outer), [INFO] [stdout] 24 | | })) [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/environment.rs:31:25 [INFO] [stdout] | [INFO] [stdout] 31 | .or_else(|| self.outer.as_ref()?.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.rs:415:14 [INFO] [stdout] | [INFO] [stdout] 414 | fn parse_call_expr(parser: &mut Parser, func: Box) -> Box { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 415 | Box::new(CallExpression { [INFO] [stdout] | ______________^ [INFO] [stdout] 416 | | token: parser.current_token.clone(), [INFO] [stdout] 417 | | func, [INFO] [stdout] 418 | | arguments: parser.parse_expression_list(TokenType::RightParen), [INFO] [stdout] 419 | | }) [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/vm.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 39 | let main_closure = Rc::new(Closure { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | let main_frame = Frame::new(main_closure, 0); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 44 | let mut frames = Vec::with_capacity(MAX_FRAMES as usize); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 50 | stack: Vec::with_capacity(STACK_SIZE as usize), [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/vm.rs:52:22 [INFO] [stdout] | [INFO] [stdout] 39 | let main_closure = Rc::new(Closure { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | let main_frame = Frame::new(main_closure, 0); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 44 | let mut frames = Vec::with_capacity(MAX_FRAMES as usize); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 52 | globals: Vec::with_capacity(GLOBALS_SIZE as usize), [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/vm.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 489 | let elements = self.stack[start_index..end_index].to_vec(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 490 | [INFO] [stdout] 491 | Rc::new(Array { elements }) [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/vm.rs:514:17 [INFO] [stdout] | [INFO] [stdout] 495 | let mut pairs: HashMap = HashMap::new(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 514 | Rc::new(HashMp { pairs }) [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 9 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `monkey-lang-rs` (bin "monkey-lang-rs" test) due to 10 previous errors; 9 warnings emitted [INFO] running `Command { std: "docker" "inspect" "099e17858314ed0110f54981737512eed9027458ca2d684956b026b638c3399f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "099e17858314ed0110f54981737512eed9027458ca2d684956b026b638c3399f", kill_on_drop: false }` [INFO] [stdout] 099e17858314ed0110f54981737512eed9027458ca2d684956b026b638c3399f