[INFO] cloning repository https://github.com/cooldudemcgeexl/crust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cooldudemcgeexl/crust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcooldudemcgeexl%2Fcrust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcooldudemcgeexl%2Fcrust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8415ad3fd465214e00bcd4786743a254e082fb60 [INFO] checking cooldudemcgeexl/crust/8415ad3fd465214e00bcd4786743a254e082fb60 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%2Fcooldudemcgeexl%2Fcrust" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/cooldudemcgeexl/crust 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/cooldudemcgeexl/crust [INFO] finished tweaking git repo https://github.com/cooldudemcgeexl/crust [INFO] tweaked toml for git repo https://github.com/cooldudemcgeexl/crust written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/cooldudemcgeexl/crust 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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] bb8019109d64ef87ce0d187835464908cf02655a54a7dc5a2d351b96491b185a [INFO] running `Command { std: "docker" "start" "-a" "bb8019109d64ef87ce0d187835464908cf02655a54a7dc5a2d351b96491b185a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bb8019109d64ef87ce0d187835464908cf02655a54a7dc5a2d351b96491b185a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bb8019109d64ef87ce0d187835464908cf02655a54a7dc5a2d351b96491b185a", kill_on_drop: false }` [INFO] [stdout] bb8019109d64ef87ce0d187835464908cf02655a54a7dc5a2d351b96491b185a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 15555b15daa51f433dc8acd1ec59a384a87e669ba1c91650ce155e20e58b0e89 [INFO] running `Command { std: "docker" "start" "-a" "15555b15daa51f433dc8acd1ec59a384a87e669ba1c91650ce155e20e58b0e89", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.66 [INFO] [stderr] Compiling unicode-ident v1.0.11 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling futures-core v0.3.28 [INFO] [stderr] Compiling semver v1.0.18 [INFO] [stderr] Compiling futures-channel v0.3.28 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling slab v0.4.8 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Checking futures-sink v0.3.28 [INFO] [stderr] Compiling regex-syntax v0.7.4 [INFO] [stderr] Checking pin-project-lite v0.2.10 [INFO] [stderr] Checking futures-io v0.3.28 [INFO] [stderr] Compiling thiserror v1.0.44 [INFO] [stderr] Compiling relative-path v1.8.0 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Checking futures-timer v3.0.2 [INFO] [stderr] Compiling quote v1.0.32 [INFO] [stderr] Compiling aho-corasick v1.0.2 [INFO] [stderr] Compiling rstest_macros v0.18.1 [INFO] [stderr] Compiling syn v2.0.27 [INFO] [stderr] Compiling regex-automata v0.3.3 [INFO] [stderr] Compiling regex v1.9.1 [INFO] [stderr] Compiling futures-macro v0.3.28 [INFO] [stderr] Compiling thiserror-impl v1.0.44 [INFO] [stderr] Checking crust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `thiserror::Error` [INFO] [stdout] --> src/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use thiserror::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/parser/procedure.rs:3:26 [INFO] [stdout] | [INFO] [stdout] 3 | use super::declaratons::{self, Declaration, VariableDeclaration}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/scanner/stripper.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `fs` and `io` [INFO] [stdout] --> src/scanner/stripper.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | use std::{fs, io}; [INFO] [stdout] | ^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/scanner.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/scanner.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thiserror::Error` [INFO] [stdout] --> src/semantics/context.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use thiserror::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thiserror::Error` [INFO] [stdout] --> src/semantics/procedure.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use thiserror::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::parser::types::Identifier` [INFO] [stdout] --> src/semantics/procedure.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::parser::types::Identifier; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `line_number` [INFO] [stdout] --> src/scanner.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | let mut line_number = 0u32; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_line_number` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/scanner.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | for (index, curr_char) in cleaned_file.chars().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/scanner.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | let mut line_number = 0u32; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/semantics/expression.rs:657:42 [INFO] [stdout] | [INFO] [stdout] 657 | fn analyze_expression(value: Number, context: &mut Context) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/semantics/expression.rs:665:24 [INFO] [stdout] | [INFO] [stdout] 665 | fn get_type(&self, context: &Context) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> src/semantics/procedure.rs:117:24 [INFO] [stdout] | [INFO] [stdout] 117 | fn get_type(&self, context: &Context) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/semantics/statement.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | scope: &super::context::Scope, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parsed_output` [INFO] [stdout] --> src/main.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | let (parsed_input, parsed_output) = parse_args()?; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parsed_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `main_result` [INFO] [stdout] --> src/main.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let main_result = compile_file(&parsed_input)?; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_main_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `file_name` [INFO] [stdout] --> src/main.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | let file_name = file_path.to_str(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | let mut file_contents = fs::read_to_string(file_path)?; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `declarations`, `procedures`, and `block` are never read [INFO] [stdout] --> src/semantics.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct AnalyzedProgram { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 52 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 53 | pub declarations: ScopeContext, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 54 | pub procedures: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 55 | pub block: AnalyzedBlock, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedProgram` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | BitwiseAnd(Box, AnalyzedArithOp), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 12 | BitwiseAnd((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | BitwiseOr(Box, AnalyzedArithOp), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 13 | BitwiseOr((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:14:16 [INFO] [stdout] | [INFO] [stdout] 14 | BitwiseNot(AnalyzedArithOp), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 14 | BitwiseNot(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | LogicalAnd(Box, AnalyzedArithOp), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 15 | LogicalAnd((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | LogicalOr(Box, AnalyzedArithOp), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 16 | LogicalOr((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | LogicalNot(AnalyzedArithOp), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 17 | LogicalNot(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | Cast(Box, Type), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedExpression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 18 | Cast((), Type), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:114:10 [INFO] [stdout] | [INFO] [stdout] 114 | Plus(Box, AnalyzedRelation), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 114 | Plus((), AnalyzedRelation), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `1` is never read [INFO] [stdout] --> src/semantics/expression.rs:115:43 [INFO] [stdout] | [INFO] [stdout] 115 | ArrayScalarPlus(Box, AnalyzedRelation), [INFO] [stdout] | --------------- field in this variant ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 115 | ArrayScalarPlus(Box, ()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:116:21 [INFO] [stdout] | [INFO] [stdout] 116 | ScalarArrayPlus(Box, AnalyzedRelation), [INFO] [stdout] | --------------- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 116 | ScalarArrayPlus((), AnalyzedRelation), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:117:15 [INFO] [stdout] | [INFO] [stdout] 117 | ArrayPlus(Box, AnalyzedRelation), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 117 | ArrayPlus((), AnalyzedRelation), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:119:11 [INFO] [stdout] | [INFO] [stdout] 119 | Minus(Box, AnalyzedRelation), [INFO] [stdout] | ----- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 119 | Minus((), AnalyzedRelation), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `1` is never read [INFO] [stdout] --> src/semantics/expression.rs:120:44 [INFO] [stdout] | [INFO] [stdout] 120 | ArrayScalarMinus(Box, AnalyzedRelation), [INFO] [stdout] | ---------------- field in this variant ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 120 | ArrayScalarMinus(Box, ()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:121:22 [INFO] [stdout] | [INFO] [stdout] 121 | ScalarArrayMinus(Box, AnalyzedRelation), [INFO] [stdout] | ---------------- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 121 | ScalarArrayMinus((), AnalyzedRelation), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:122:16 [INFO] [stdout] | [INFO] [stdout] 122 | ArrayMinus(Box, AnalyzedRelation), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 122 | ArrayMinus((), AnalyzedRelation), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | Cast(Box, Type), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedArithOp` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 124 | Cast((), Type), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:295:14 [INFO] [stdout] | [INFO] [stdout] 295 | LessThan(Box, AnalyzedTerm), [INFO] [stdout] | -------- ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 295 | LessThan((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:296:16 [INFO] [stdout] | [INFO] [stdout] 296 | LessThanEq(Box, AnalyzedTerm), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 296 | LessThanEq((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:297:17 [INFO] [stdout] | [INFO] [stdout] 297 | GreaterThan(Box, AnalyzedTerm), [INFO] [stdout] | ----------- ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 297 | GreaterThan((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:298:19 [INFO] [stdout] | [INFO] [stdout] 298 | GreaterThanEq(Box, AnalyzedTerm), [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 298 | GreaterThanEq((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:299:12 [INFO] [stdout] | [INFO] [stdout] 299 | Equals(Box, AnalyzedTerm), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 299 | Equals((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/semantics/expression.rs:300:15 [INFO] [stdout] | [INFO] [stdout] 300 | NotEquals(Box, AnalyzedTerm), [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 300 | NotEquals((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:301:10 [INFO] [stdout] | [INFO] [stdout] 301 | Cast(Box, Type), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedRelation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 301 | Cast((), Type), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:408:14 [INFO] [stdout] | [INFO] [stdout] 408 | Multiply(Box, AnalyzedFactor), [INFO] [stdout] | -------- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 408 | Multiply((), AnalyzedFactor), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `1` is never read [INFO] [stdout] --> src/semantics/expression.rs:409:44 [INFO] [stdout] | [INFO] [stdout] 409 | ArrayScalarMultiply(Box, AnalyzedFactor), [INFO] [stdout] | ------------------- ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 409 | ArrayScalarMultiply(Box, ()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:410:25 [INFO] [stdout] | [INFO] [stdout] 410 | ScalarArrayMultiply(Box, AnalyzedFactor), [INFO] [stdout] | ------------------- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 410 | ScalarArrayMultiply((), AnalyzedFactor), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:411:19 [INFO] [stdout] | [INFO] [stdout] 411 | ArrayMultiply(Box, AnalyzedFactor), [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 411 | ArrayMultiply((), AnalyzedFactor), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:413:12 [INFO] [stdout] | [INFO] [stdout] 413 | Divide(Box, AnalyzedFactor), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 413 | Divide((), AnalyzedFactor), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `1` is never read [INFO] [stdout] --> src/semantics/expression.rs:414:42 [INFO] [stdout] | [INFO] [stdout] 414 | ArrayScalarDivide(Box, AnalyzedFactor), [INFO] [stdout] | ----------------- ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 414 | ArrayScalarDivide(Box, ()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:415:23 [INFO] [stdout] | [INFO] [stdout] 415 | ScalarArrayDivide(Box, AnalyzedFactor), [INFO] [stdout] | ----------------- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 415 | ScalarArrayDivide((), AnalyzedFactor), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:416:17 [INFO] [stdout] | [INFO] [stdout] 416 | ArrayDivide(Box, AnalyzedFactor), [INFO] [stdout] | ----------- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 416 | ArrayDivide((), AnalyzedFactor), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:418:10 [INFO] [stdout] | [INFO] [stdout] 418 | Cast(Box, Type), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedTerm` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 418 | Cast((), Type), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:575:12 [INFO] [stdout] | [INFO] [stdout] 575 | String(String), [INFO] [stdout] | ------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedFactor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 575 | String(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:579:10 [INFO] [stdout] | [INFO] [stdout] 579 | Cast(Box, Type), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedFactor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 579 | Cast((), Type), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:652:13 [INFO] [stdout] | [INFO] [stdout] 652 | Integer(i64), [INFO] [stdout] | ------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedNumber` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 652 | Integer(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/expression.rs:653:11 [INFO] [stdout] | [INFO] [stdout] 653 | Float(f64), [INFO] [stdout] | ----- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedNumber` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 653 | Float(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `1` is never read [INFO] [stdout] --> src/semantics/expression.rs:676:21 [INFO] [stdout] | [INFO] [stdout] 676 | Indexed(String, Box), [INFO] [stdout] | ------- ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedName` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 676 | Indexed(String, ()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `identifier`, `arg_list`, `declarations`, `procedures`, and `block` are never read [INFO] [stdout] --> src/semantics/procedure.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct AnalyzedProcedure { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 16 | pub identifier: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 17 | pub arg_list: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 18 | pub declarations: ScopeContext, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | pub procedures: Vec>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 20 | pub block: AnalyzedBlock, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedProcedure` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `identifier` and `arg_list` are never read [INFO] [stdout] --> src/semantics/procedure.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct AnalyzedProcedureCall { [INFO] [stdout] | --------------------- fields in this struct [INFO] [stdout] 71 | pub identifier: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 72 | pub arg_list: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedProcedureCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/statement.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct AnalyzedBlock(pub Vec); [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `AnalyzedBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/statement.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | Assignment(AnalyzedAssignment), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 15 | Assignment(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/statement.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | If(AnalyzedIf), [INFO] [stdout] | -- ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 16 | If(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/statement.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | Loop(AnalyzedLoop), [INFO] [stdout] | ---- ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 17 | Loop(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/semantics/statement.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | Return(AnalyzedReturn), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 18 | Return(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `destination` and `expression` are never read [INFO] [stdout] --> src/semantics/statement.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct AnalyzedAssignment { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 61 | pub destination: AnalyzedDestination, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 62 | pub expression: AnalyzedExpression, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedAssignment` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `identifier` and `expression` are never read [INFO] [stdout] --> src/semantics/statement.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 92 | pub struct AnalyzedDestination { [INFO] [stdout] | ------------------- fields in this struct [INFO] [stdout] 93 | pub identifier: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 94 | pub expression: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedDestination` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `conditional_expr`, `then_block`, and `else_block` are never read [INFO] [stdout] --> src/semantics/statement.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 137 | pub struct AnalyzedIf { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 138 | pub conditional_expr: AnalyzedExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 139 | pub then_block: AnalyzedBlock, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 140 | pub else_block: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedIf` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `assignment`, `condition`, and `loop_body` are never read [INFO] [stdout] --> src/semantics/statement.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 165 | pub struct AnalyzedLoop { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 166 | pub assignment: Box, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 167 | pub condition: AnalyzedExpression, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 168 | pub loop_body: AnalyzedBlock, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedLoop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `expression` is never read [INFO] [stdout] --> src/semantics/statement.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 192 | pub struct AnalyzedReturn { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 193 | pub expression: AnalyzedExpression, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AnalyzedReturn` has a derived impl for the trait `Debug`, but this is 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/parser/declaratons.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 42 | let proc_body = ProcedureBody::parse(tokens)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 43 | Ok(ProcedureDeclaration { [INFO] [stdout] | ____________^ [INFO] [stdout] 44 | | procedure_header: proc_header, [INFO] [stdout] 45 | | procedure_body: proc_body, [INFO] [stdout] 46 | | }) [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] = 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/parser/procedure.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 61 | let mut declaratons = Vec::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 93 | Ok(ProcedureBody { [INFO] [stdout] | ____________^ [INFO] [stdout] 94 | | declarations: declaratons, [INFO] [stdout] 95 | | statements: statements, [INFO] [stdout] 96 | | }) [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/procedure.rs:188:12 [INFO] [stdout] | [INFO] [stdout] 179 | let mut args = Vec::new(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | Ok(ArgumentList { expr_list: args }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/parser/program.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 15 | let body = ProgramBody::parse(tokens)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 26 | Ok(ProgramStruct { [INFO] [stdout] | ____________^ [INFO] [stdout] 27 | | program_header: header, [INFO] [stdout] 28 | | program_body: body, [INFO] [stdout] 29 | | }) [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/program.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 56 | let mut declaratons: Vec = Vec::::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 57 | let mut statements: Vec = Vec::::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 88 | Ok(ProgramBody { [INFO] [stdout] | ____________^ [INFO] [stdout] 89 | | declarations: declaratons, [INFO] [stdout] 90 | | statements: statements, [INFO] [stdout] 91 | | }) [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/statement.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 53 | let destination = Destination::parse(tokens)?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | tokens.consume_expected(Token::Assignment)?; [INFO] [stdout] 55 | let expression = Expression::parse(tokens)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 56 | Ok(AssignmentStatement { [INFO] [stdout] | ____________^ [INFO] [stdout] 57 | | destination: destination, [INFO] [stdout] 58 | | expression: expression, [INFO] [stdout] 59 | | }) [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] | [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/statement.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 72 | let mut then_block = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | let mut else_block = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 78 | let condition = Expression::parse(tokens)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 103 | Ok(IfStatement { [INFO] [stdout] | ____________^ [INFO] [stdout] 104 | | condition, [INFO] [stdout] 105 | | then_statement: then_block, [INFO] [stdout] 106 | | else_statement: if else_exists { Some(else_block) } else { None }, [INFO] [stdout] 107 | | }) [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/statement.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 120 | let mut loop_body = Vec::new(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 125 | let assignment_statement = AssignmentStatement::parse(tokens)?; [INFO] [stdout] | -------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 128 | let condition = Expression::parse(tokens)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 140 | Ok(LoopStatement { [INFO] [stdout] | ____________^ [INFO] [stdout] 141 | | assignment_statement: assignment_statement, [INFO] [stdout] 142 | | condition, [INFO] [stdout] 143 | | loop_body, [INFO] [stdout] 144 | | }) [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] | [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/statement.rs:159:12 [INFO] [stdout] | [INFO] [stdout] 157 | let expression = Expression::parse(tokens)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 158 | [INFO] [stdout] 159 | Ok(ReturnStatement { [INFO] [stdout] | ____________^ [INFO] [stdout] 160 | | expression: expression, [INFO] [stdout] 161 | | }) [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/semantics.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn analyze(program: ProgramStruct) -> Result { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | let mut context = Context::new(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 63 | let mut procedures = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 71 | let block = program [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 76 | Ok(AnalyzedProgram { [INFO] [stdout] | ____________^ [INFO] [stdout] 77 | | name, [INFO] [stdout] 78 | | declarations: context.into_global(), [INFO] [stdout] 79 | | procedures, [INFO] [stdout] 80 | | block, [INFO] [stdout] 81 | | }) [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] | [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/semantics/context.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new(return_type: Type) -> Self { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 25 | ScopeContext { [INFO] [stdout] 26 | variables: HashMap::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/context.rs:27:25 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new(return_type: Type) -> Self { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 27 | procedures: HashMap::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/context.rs:90:24 [INFO] [stdout] | [INFO] [stdout] 33 | let mut procedures = HashMap::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 90 | variables: HashMap::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/context.rs:92:26 [INFO] [stdout] | [INFO] [stdout] 33 | let mut procedures = HashMap::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 92 | return_type: Type::Void, [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/semantics/expression.rs:24:34 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cast_expr(self, value_type: Type) -> AnalyzedExpression { [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] 24 | AnalyzedExpression::Cast(Box::new(self), value_type) [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/semantics/expression.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn cond_expr(self, context: &Context) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 28 | match self.get_type(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/semantics/expression.rs:130:31 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn cast(self, value_type: Type) -> AnalyzedArithOp { [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] 130 | AnalyzedArithOp::Cast(Box::new(self), value_type) [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/semantics/expression.rs:307:32 [INFO] [stdout] | [INFO] [stdout] 306 | pub fn cast(self, value_type: Type) -> AnalyzedRelation { [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] 307 | AnalyzedRelation::Cast(Box::new(self), value_type) [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/semantics/expression.rs:424:28 [INFO] [stdout] | [INFO] [stdout] 423 | pub fn cast(self, value_type: Type) -> AnalyzedTerm { [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] 424 | AnalyzedTerm::Cast(Box::new(self), value_type) [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/semantics/expression.rs:584:30 [INFO] [stdout] | [INFO] [stdout] 583 | pub fn cast(self, value_type: Type) -> AnalyzedFactor { [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] 584 | AnalyzedFactor::Cast(Box::new(self), value_type) [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/semantics/procedure.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 25 | self, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 29 | let arg_list = match self.procedure_header.param_list { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 37 | let return_type: Type = self.procedure_header.type_mark.into(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | let signature = ProcedureSignature(arg_list.clone(), return_type.clone()); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 47 | let mut procedures = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 54 | let block = self [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 59 | Ok(AnalyzedProcedure { [INFO] [stdout] | ____________^ [INFO] [stdout] 60 | | identifier, [INFO] [stdout] 61 | | arg_list, [INFO] [stdout] 62 | | declarations: context.end_stack()?, [INFO] [stdout] 63 | | procedures, [INFO] [stdout] 64 | | block, [INFO] [stdout] 65 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/procedure.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 78 | value: ProcedureCall, [INFO] [stdout] | -------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | let proc_sig = context [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 86 | let passed_args = value [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 96 | let args = passed_args [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 110 | Ok(AnalyzedProcedureCall { [INFO] [stdout] | ____________^ [INFO] [stdout] 111 | | identifier: identifier.identifier_string.clone(), [INFO] [stdout] 112 | | arg_list: args, [INFO] [stdout] 113 | | ret_type: proc_sig.1, [INFO] [stdout] 114 | | }) [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/semantics/statement.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 23 | self, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 27 | let statements = self [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 32 | Ok(AnalyzedBlock(statements)) [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/semantics/statement.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 66 | self, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 70 | let destination = self.destination.analyze(context, scope)?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 71 | let mut expression = AnalyzedExpression::analyze_expression(self.expression, context)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let expression_type = expression.get_type(context)?; [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 84 | Ok(AnalyzedAssignment { [INFO] [stdout] | ____________^ [INFO] [stdout] 85 | | destination, [INFO] [stdout] 86 | | expression, [INFO] [stdout] 87 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/statement.rs:156:12 [INFO] [stdout] | [INFO] [stdout] 145 | self, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 149 | let conditional_expr = AnalyzedExpression::analyze_expression(self.condition, context)?; [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 150 | let then_block = self.then_statement.analyze(context, scope)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 151 | let else_block = self [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | Ok(AnalyzedIf { [INFO] [stdout] | ____________^ [INFO] [stdout] 157 | | conditional_expr, [INFO] [stdout] 158 | | then_block, [INFO] [stdout] 159 | | else_block, [INFO] [stdout] 160 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/statement.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 173 | self, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 177 | let assignment = self.assignment_statement.analyze(context, scope)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | let condition = [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 181 | let loop_body = self.loop_body.analyze(context, scope)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 182 | [INFO] [stdout] 183 | Ok(AnalyzedLoop { [INFO] [stdout] | ____________^ [INFO] [stdout] 184 | | assignment: Box::new(assignment), [INFO] [stdout] 185 | | condition, [INFO] [stdout] 186 | | loop_body, [INFO] [stdout] 187 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/semantics/statement.rs:219:12 [INFO] [stdout] | [INFO] [stdout] 198 | self, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 202 | let exprected_ret_type = context.get_return_type().clone(); [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 207 | let mut expression = AnalyzedExpression::analyze_expression(self.expression, context)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 208 | let exp_type = expression.get_type(context)?; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 219 | Ok(AnalyzedReturn { expression }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 27 previous errors; 70 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `crust` (bin "crust") due to 28 previous errors; 70 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "15555b15daa51f433dc8acd1ec59a384a87e669ba1c91650ce155e20e58b0e89", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "15555b15daa51f433dc8acd1ec59a384a87e669ba1c91650ce155e20e58b0e89", kill_on_drop: false }` [INFO] [stdout] 15555b15daa51f433dc8acd1ec59a384a87e669ba1c91650ce155e20e58b0e89