[INFO] cloning repository https://github.com/n8ta/crlox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/n8ta/crlox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fn8ta%2Fcrlox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fn8ta%2Fcrlox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 04b9ba5511781b30126b4d97744318e9f2964f3f [INFO] checking n8ta/crlox against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fn8ta%2Fcrlox" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/n8ta/crlox on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/n8ta/crlox [INFO] finished tweaking git repo https://github.com/n8ta/crlox [INFO] tweaked toml for git repo https://github.com/n8ta/crlox written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/n8ta/crlox 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libc v0.2.111 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fe28d76ef7b53f7fdc7fd19f99de16fe8cc0465f0cbdc74388bed1e8647ec952 [INFO] running `Command { std: "docker" "start" "-a" "fe28d76ef7b53f7fdc7fd19f99de16fe8cc0465f0cbdc74388bed1e8647ec952", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fe28d76ef7b53f7fdc7fd19f99de16fe8cc0465f0cbdc74388bed1e8647ec952", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fe28d76ef7b53f7fdc7fd19f99de16fe8cc0465f0cbdc74388bed1e8647ec952", kill_on_drop: false }` [INFO] [stdout] fe28d76ef7b53f7fdc7fd19f99de16fe8cc0465f0cbdc74388bed1e8647ec952 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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" "-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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 915add437a70e768613d4bc0d4a8e1502021ace8400b8e52ee2cb59f04733d5b [INFO] running `Command { std: "docker" "start" "-a" "915add437a70e768613d4bc0d4a8e1502021ace8400b8e52ee2cb59f04733d5b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.111 [INFO] [stderr] Checking ppv-lite86 v0.2.15 [INFO] [stderr] Checking getrandom v0.2.3 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking colored v2.0.0 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking rclox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ERROR_TTYPE_ID` [INFO] [stdout] --> src/lexer/mod.rs:7:72 [INFO] [stdout] | [INFO] [stdout] 7 | NUMBER_TTYPE_ID, IDENTIFIER_TTYPE_ID, STRING_TTYPE_ID, ERROR_TTYPE_ID}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Debug`, `Display`, and `Formatter` [INFO] [stdout] --> src/resolver/mod.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fmt::{Debug, Display, Formatter}; [INFO] [stdout] | ^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ExprInContext`, `ExprTy`, `Expr`, `ParserFunc`, and `Stmt` [INFO] [stdout] --> src/resolver/mod.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::ast::{Expr, ExprInContext, ExprTy, Stmt, ParserFunc}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ ^^^^^^ ^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SourceRef` and `Symbol` [INFO] [stdout] --> src/resolver/mod.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::lexer::{SourceRef, Symbol, Symbolizer}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resolver::stack_placement_pass::pass` [INFO] [stdout] --> src/resolver/mod.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::resolver::stack_placement_pass::pass; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resolver::upvalue_identifier_pass::PartialResolver` [INFO] [stdout] --> src/resolver/mod.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::resolver::upvalue_identifier_pass::PartialResolver; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Source` [INFO] [stdout] --> src/resolver/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::Source; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WrappedValue` [INFO] [stdout] --> src/runtime/mod.rs:7:46 [INFO] [stdout] | [INFO] [stdout] 7 | pub use crate::runtime::closure::{RtClosure, WrappedValue}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:459:51 [INFO] [stdout] | [INFO] [stdout] 459 | (Value::Num(a), Value::Num(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 459 - (Value::Num(a), Value::Num(b)) => (a == b), [INFO] [stdout] 459 + (Value::Num(a), Value::Num(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:460:57 [INFO] [stdout] | [INFO] [stdout] 460 | (Value::String(a), Value::String(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 460 - (Value::String(a), Value::String(b)) => (a == b), [INFO] [stdout] 460 + (Value::String(a), Value::String(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:461:53 [INFO] [stdout] | [INFO] [stdout] 461 | (Value::Bool(a), Value::Bool(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 461 - (Value::Bool(a), Value::Bool(b)) => (a == b), [INFO] [stdout] 461 + (Value::Bool(a), Value::Bool(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:462:45 [INFO] [stdout] | [INFO] [stdout] 462 | (Value::Nil, Value::Nil) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 462 - (Value::Nil, Value::Nil) => (a == b), [INFO] [stdout] 462 + (Value::Nil, Value::Nil) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.4 [INFO] [stdout] warning: variants `Error` and `Stack` are never constructed [INFO] [stdout] --> src/lexer/types.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub enum TType { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 77 | Error(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 78 | EOF, [INFO] [stdout] 79 | Stack, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TType` 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] warning: variants `Super` and `This` are never constructed [INFO] [stdout] --> src/ast/types.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 110 | pub enum Expr< [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 122 | Super(Symbol), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | This(), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `func` is never read [INFO] [stdout] --> src/bytecode_compiler/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct SubCompiler { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 13 | chunk: Chunk, [INFO] [stdout] 14 | func: ResolvedFunc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ProgramRoot` is never constructed [INFO] [stdout] --> src/resolver/types/var_decl.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum VarDeclType { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 12 | ProgramRoot // root function technically has a name and var decl [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VarDeclType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Method` is never constructed [INFO] [stdout] --> src/runtime/func.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 75 | pub enum FuncType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 76 | Method, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FuncType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `True`, `False`, `SmallConst`, `Stack`, `Class`, and `Method` are never constructed [INFO] [stdout] --> src/ops.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | True, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | False, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | SmallConst(u8), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | Closure(u8), [INFO] [stdout] 33 | Stack, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 34 | RelJumpIfTrue(i16), [INFO] [stdout] 35 | Class(u8), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | Method(u8) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Op` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ERROR_TTYPE_ID` [INFO] [stdout] --> src/lexer/mod.rs:7:72 [INFO] [stdout] | [INFO] [stdout] 7 | NUMBER_TTYPE_ID, IDENTIFIER_TTYPE_ID, STRING_TTYPE_ID, ERROR_TTYPE_ID}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Debug`, `Display`, and `Formatter` [INFO] [stdout] --> src/resolver/mod.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fmt::{Debug, Display, Formatter}; [INFO] [stdout] | ^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ExprInContext`, `ExprTy`, `Expr`, `ParserFunc`, and `Stmt` [INFO] [stdout] --> src/resolver/mod.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::ast::{Expr, ExprInContext, ExprTy, Stmt, ParserFunc}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ ^^^^^^ ^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SourceRef` and `Symbol` [INFO] [stdout] --> src/resolver/mod.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::lexer::{SourceRef, Symbol, Symbolizer}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resolver::stack_placement_pass::pass` [INFO] [stdout] --> src/resolver/mod.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::resolver::stack_placement_pass::pass; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resolver::upvalue_identifier_pass::PartialResolver` [INFO] [stdout] --> src/resolver/mod.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::resolver::upvalue_identifier_pass::PartialResolver; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Source` [INFO] [stdout] --> src/resolver/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::Source; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WrappedValue` [INFO] [stdout] --> src/runtime/mod.rs:7:46 [INFO] [stdout] | [INFO] [stdout] 7 | pub use crate::runtime::closure::{RtClosure, WrappedValue}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:459:51 [INFO] [stdout] | [INFO] [stdout] 459 | (Value::Num(a), Value::Num(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 459 - (Value::Num(a), Value::Num(b)) => (a == b), [INFO] [stdout] 459 + (Value::Num(a), Value::Num(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:460:57 [INFO] [stdout] | [INFO] [stdout] 460 | (Value::String(a), Value::String(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 460 - (Value::String(a), Value::String(b)) => (a == b), [INFO] [stdout] 460 + (Value::String(a), Value::String(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:461:53 [INFO] [stdout] | [INFO] [stdout] 461 | (Value::Bool(a), Value::Bool(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 461 - (Value::Bool(a), Value::Bool(b)) => (a == b), [INFO] [stdout] 461 + (Value::Bool(a), Value::Bool(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:462:45 [INFO] [stdout] | [INFO] [stdout] 462 | (Value::Nil, Value::Nil) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 462 - (Value::Nil, Value::Nil) => (a == b), [INFO] [stdout] 462 + (Value::Nil, Value::Nil) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Error` and `Stack` are never constructed [INFO] [stdout] --> src/lexer/types.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub enum TType { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 77 | Error(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 78 | EOF, [INFO] [stdout] 79 | Stack, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TType` 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] warning: variants `Super` and `This` are never constructed [INFO] [stdout] --> src/ast/types.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 110 | pub enum Expr< [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 122 | Super(Symbol), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | This(), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `func` is never read [INFO] [stdout] --> src/bytecode_compiler/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct SubCompiler { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 13 | chunk: Chunk, [INFO] [stdout] 14 | func: ResolvedFunc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ProgramRoot` is never constructed [INFO] [stdout] --> src/resolver/types/var_decl.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum VarDeclType { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 12 | ProgramRoot // root function technically has a name and var decl [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VarDeclType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Method` is never constructed [INFO] [stdout] --> src/runtime/func.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 75 | pub enum FuncType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 76 | Method, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FuncType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `True`, `False`, `SmallConst`, `Stack`, `Class`, and `Method` are never constructed [INFO] [stdout] --> src/ops.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | True, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | False, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | SmallConst(u8), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | Closure(u8), [INFO] [stdout] 33 | Stack, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 34 | RelJumpIfTrue(i16), [INFO] [stdout] 35 | Class(u8), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | Method(u8) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Op` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/e2e_tests.rs:35:67 [INFO] [stdout] | [INFO] [stdout] 35 | let out_path = tests_root.join(format!("out{}.txt", number.clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/e2e_tests.rs:37:81 [INFO] [stdout] | [INFO] [stdout] 37 | .expect(&format!("Expected a file called out{}.txt to exist", number.clone())); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 20 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.77s [INFO] running `Command { std: "docker" "inspect" "915add437a70e768613d4bc0d4a8e1502021ace8400b8e52ee2cb59f04733d5b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "915add437a70e768613d4bc0d4a8e1502021ace8400b8e52ee2cb59f04733d5b", kill_on_drop: false }` [INFO] [stdout] 915add437a70e768613d4bc0d4a8e1502021ace8400b8e52ee2cb59f04733d5b [INFO] checking n8ta/crlox against try#f9935d29d867449445ee008640ccca1bf1ae0889+rustflags=-Dtail_expr_drop_order for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fn8ta%2Fcrlox" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/n8ta/crlox on toolchain f9935d29d867449445ee008640ccca1bf1ae0889 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/n8ta/crlox [INFO] finished tweaking git repo https://github.com/n8ta/crlox [INFO] tweaked toml for git repo https://github.com/n8ta/crlox written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/n8ta/crlox 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" "+f9935d29d867449445ee008640ccca1bf1ae0889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 38576585676f44d569d3ef78f63e0e8dd738006350ce6d23f1668e6207b04159 [INFO] running `Command { std: "docker" "start" "-a" "38576585676f44d569d3ef78f63e0e8dd738006350ce6d23f1668e6207b04159", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "38576585676f44d569d3ef78f63e0e8dd738006350ce6d23f1668e6207b04159", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38576585676f44d569d3ef78f63e0e8dd738006350ce6d23f1668e6207b04159", kill_on_drop: false }` [INFO] [stdout] 38576585676f44d569d3ef78f63e0e8dd738006350ce6d23f1668e6207b04159 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+f9935d29d867449445ee008640ccca1bf1ae0889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a2f63fa23cb39a69622f35783509ed14a66bff3db7dfbeddfab8a84fb7bf250 [INFO] running `Command { std: "docker" "start" "-a" "6a2f63fa23cb39a69622f35783509ed14a66bff3db7dfbeddfab8a84fb7bf250", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.111 [INFO] [stderr] Checking ppv-lite86 v0.2.15 [INFO] [stderr] Checking getrandom v0.2.3 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking colored v2.0.0 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking rclox v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stdout] warning: unused import: `ERROR_TTYPE_ID` [INFO] [stdout] --> src/lexer/mod.rs:7:72 [INFO] [stdout] | [INFO] [stdout] 7 | NUMBER_TTYPE_ID, IDENTIFIER_TTYPE_ID, STRING_TTYPE_ID, ERROR_TTYPE_ID}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Debug`, `Display`, and `Formatter` [INFO] [stdout] --> src/resolver/mod.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fmt::{Debug, Display, Formatter}; [INFO] [stdout] | ^^^^^ ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ExprInContext`, `ExprTy`, `Expr`, `ParserFunc`, and `Stmt` [INFO] [stdout] --> src/resolver/mod.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::ast::{Expr, ExprInContext, ExprTy, Stmt, ParserFunc}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ ^^^^^^ ^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SourceRef` and `Symbol` [INFO] [stdout] --> src/resolver/mod.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::lexer::{SourceRef, Symbol, Symbolizer}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resolver::stack_placement_pass::pass` [INFO] [stdout] --> src/resolver/mod.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::resolver::stack_placement_pass::pass; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resolver::upvalue_identifier_pass::PartialResolver` [INFO] [stdout] --> src/resolver/mod.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::resolver::upvalue_identifier_pass::PartialResolver; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Source` [INFO] [stdout] --> src/resolver/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::Source; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WrappedValue` [INFO] [stdout] --> src/runtime/mod.rs:7:46 [INFO] [stdout] | [INFO] [stdout] 7 | pub use crate::runtime::closure::{RtClosure, WrappedValue}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:459:51 [INFO] [stdout] | [INFO] [stdout] 459 | (Value::Num(a), Value::Num(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 459 - (Value::Num(a), Value::Num(b)) => (a == b), [INFO] [stdout] 459 + (Value::Num(a), Value::Num(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:460:57 [INFO] [stdout] | [INFO] [stdout] 460 | (Value::String(a), Value::String(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 460 - (Value::String(a), Value::String(b)) => (a == b), [INFO] [stdout] 460 + (Value::String(a), Value::String(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:461:53 [INFO] [stdout] | [INFO] [stdout] 461 | (Value::Bool(a), Value::Bool(b)) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 461 - (Value::Bool(a), Value::Bool(b)) => (a == b), [INFO] [stdout] 461 + (Value::Bool(a), Value::Bool(b)) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm.rs:462:45 [INFO] [stdout] | [INFO] [stdout] 462 | (Value::Nil, Value::Nil) => (a == b), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 462 - (Value::Nil, Value::Nil) => (a == b), [INFO] [stdout] 462 + (Value::Nil, Value::Nil) => a == b, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking rand v0.8.4 [INFO] [stdout] warning: variants `Error` and `Stack` are never constructed [INFO] [stdout] --> src/lexer/types.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub enum TType { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 77 | Error(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 78 | EOF, [INFO] [stdout] 79 | Stack, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TType` 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] warning: variants `Super` and `This` are never constructed [INFO] [stdout] --> src/ast/types.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 110 | pub enum Expr< [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 122 | Super(Symbol), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | This(), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `func` is never read [INFO] [stdout] --> src/bytecode_compiler/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | struct SubCompiler { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 13 | chunk: Chunk, [INFO] [stdout] 14 | func: ResolvedFunc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ProgramRoot` is never constructed [INFO] [stdout] --> src/resolver/types/var_decl.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum VarDeclType { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 12 | ProgramRoot // root function technically has a name and var decl [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VarDeclType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Method` is never constructed [INFO] [stdout] --> src/runtime/func.rs:76:5 [INFO] [stdout] | [INFO] [stdout] 75 | pub enum FuncType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 76 | Method, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FuncType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `True`, `False`, `SmallConst`, `Stack`, `Class`, and `Method` are never constructed [INFO] [stdout] --> src/ops.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Op { [INFO] [stdout] | -- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | True, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | False, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | SmallConst(u8), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | Closure(u8), [INFO] [stdout] 33 | Stack, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 34 | RelJumpIfTrue(i16), [INFO] [stdout] 35 | Class(u8), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | Method(u8) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Op` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ast/parser.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 19 | fn mk_expr(expr: PExpr, context: SourceRef) -> PExprTy { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | Box::new(ExprInContext::new(expr, context)) [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/ast/parser.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 37 | let mut stmts: Vec = vec![]; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 41 | Ok(Stmt::Block(Box::new(stmts,), 0)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ast/parser.rs:132:45 [INFO] [stdout] | [INFO] [stdout] 132 | self.function().and_then(|f| Ok(Stmt::Function(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/ast/parser.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 196 | let body = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 197 | if let (Stmt::Block(blk, _), rbrace) = self.block()? { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 203 | Ok(ParserFunc::new(name, [INFO] [stdout] | ____________^ [INFO] [stdout] 204 | | params, [INFO] [stdout] 205 | | Stmt::Block(Box::new(body), 0), [INFO] [stdout] 206 | | name_in_context.src.clone(), [INFO] [stdout] 207 | | context, [INFO] [stdout] 208 | | )) [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/ast/parser.rs:297:12 [INFO] [stdout] | [INFO] [stdout] 292 | let mut value = None; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 297 | Ok(Stmt::Return(value)) [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/ast/parser.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 302 | let expr = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 303 | self.consume(TType::RightParen.id(), "Expected ')' after while condition")?; [INFO] [stdout] 304 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 305 | Ok(Stmt::While(expr, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ast/parser.rs:317:12 [INFO] [stdout] | [INFO] [stdout] 310 | let test = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 311 | self.consume(TType::RightParen.id(), "Expected ')' after `if (... ")?; [INFO] [stdout] 312 | let if_branch = self.statement()?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 313 | let mut else_branch: Option> = None; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | Ok(Stmt::If(test, Box::new(if_branch), else_branch)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/ast/parser.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 355 | let mut stmts: Vec = vec![]; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 360 | Ok((Stmt::Block(Box::new(stmts), 0), rbrace.src)) [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/ast/parser.rs:366:12 [INFO] [stdout] | [INFO] [stdout] 364 | let value: PExprTy = self.expression()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 365 | self.consume(TType::Semicolon.id(), "Expected ';' after print value.")?; [INFO] [stdout] 366 | Ok(Stmt::Print(value)) [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/ast/parser.rs:372:12 [INFO] [stdout] | [INFO] [stdout] 370 | let value: PExprTy = self.expression()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 371 | self.consume(TType::Semicolon.id(), "Expected ';' after expression.")?; [INFO] [stdout] 372 | Ok(Stmt::Expr(value)) [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/ast/parser.rs:468:12 [INFO] [stdout] | [INFO] [stdout] 452 | fn finish_call(&mut self, callee: PExprTy) -> PExprResult { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 453 | let mut args: Vec = vec![]; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 468 | Ok(Box::new(ExprInContext::new(Expr::Call(callee, args), context))) [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/ast/parser_func.rs:52:29 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn new(name: T, args: Vec, body: Stmt, name_context: SourceRef, context: SourceRef) -> ParserFunc { [INFO] [stdout] | ------- ------------ ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 51 | let inner = ParserFuncInner { name, args, body: Box::new(body), name_context, context }; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 52 | ParserFunc { inner: Rc::new(inner) } [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/resolver/types/resolved_func.rs:45:40 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn new(name: DeclT, [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | args: Vec, [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | func: Stmt, [INFO] [stdout] | ----------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 45 | ResolvedFunc { upvalues, func: Box::new(func), name, args, name_context, body_context } [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/resolver/stack_placement_pass.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 132 | fn expr(&mut self, expr: ExprTyIn) -> Result { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 133 | let ex = match expr.expr { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 134 | Expr::Binary(a, op, b) => Expr::Binary(self.expr(a)?, op, self.expr(b)?), [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] 135 | Expr::Call(callee, args) => [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] 136 | Expr::Call(self.expr(callee)?, map_result(args, |a| self.expr(a))?), [INFO] [stdout] 137 | Expr::Grouping(g) => Expr::Grouping(self.expr(g)?), [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 138 | Expr::Get(base, field) => Expr::Get(self.expr(base)?, field), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 139 | Expr::Literal(lit) => Expr::Literal(lit), [INFO] [stdout] 140 | Expr::Unary(op, base) => Expr::Unary(op, self.expr(base)?), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 141 | Expr::Set(base, field, value) => Expr::Set(self.expr(base)?, field, self.expr(value)?), [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 144 | Expr::Assign(var, vaue) => Expr::Assign(self.resolve(var)?, self.expr(vaue)?), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | Expr::Logical(a, op, b) => Expr::Logical(self.expr(a)?, op, self.expr(b)?), [INFO] [stdout] | - - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 148 | Ok(ExprTyOut::new(ExprInContext::new(ex, expr.context))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [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/resolver/upvalue_identifier_pass.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 108 | fn expr(&mut self, expr: ExprTyIn) -> Result { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 109 | let ex = match expr.expr { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 110 | Expr::Binary(a, op, b) => Expr::Binary(self.expr(a)?, op, self.expr(b)?), [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] 111 | Expr::Call(callee, args) => { [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] 112 | let callee = self.expr(callee)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 113 | let args = map_result(args, |arg| self.expr(arg))?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 116 | Expr::Grouping(g) => Expr::Grouping(self.expr(g)?), [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 117 | Expr::Get(a, b) => Expr::Get(self.expr(a)?, b), [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 118 | Expr::Literal(lit) => Expr::Literal(lit), [INFO] [stdout] 119 | Expr::Unary(op, val) => Expr::Unary(op, self.expr(val)?), [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 120 | Expr::Set(base, field, value) => Expr::Set(self.expr(base)?, field, self.expr(value)?), [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 123 | Expr::Assign(var, value) => Expr::Assign(self.resolve(var, &expr.context)?, self.expr(value)?), [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 124 | Expr::Logical(a, op, b) => Expr::Logical(self.expr(a)?, op, self.expr(b)?), [INFO] [stdout] | - - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 127 | Ok(Box::new(ExprInContext::new(ex, expr.context))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [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; 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `rclox` (bin "rclox") due to 16 previous errors; 18 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "6a2f63fa23cb39a69622f35783509ed14a66bff3db7dfbeddfab8a84fb7bf250", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a2f63fa23cb39a69622f35783509ed14a66bff3db7dfbeddfab8a84fb7bf250", kill_on_drop: false }` [INFO] [stdout] 6a2f63fa23cb39a69622f35783509ed14a66bff3db7dfbeddfab8a84fb7bf250