[INFO] cloning repository https://github.com/MrBTTF/jc-compiler [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MrBTTF/jc-compiler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrBTTF%2Fjc-compiler", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrBTTF%2Fjc-compiler'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bf6b07fc533aeb4c4e5f742746836a5df39e7468 [INFO] checking MrBTTF/jc-compiler against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrBTTF%2Fjc-compiler" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/MrBTTF/jc-compiler [INFO] finished tweaking git repo https://github.com/MrBTTF/jc-compiler [INFO] tweaked toml for git repo https://github.com/MrBTTF/jc-compiler written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/MrBTTF/jc-compiler on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/MrBTTF/jc-compiler 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded anyhow v1.0.95 [INFO] [stderr] Downloaded rstest v0.19.0 [INFO] [stderr] Downloaded relative-path v1.9.2 [INFO] [stderr] Downloaded rstest_macros v0.19.0 [INFO] [stderr] Downloaded elf v0.7.4 [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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0dc4bc9bd59b92abd1192a920c8dc3c87a7a5871c73b39231f97db5c96f1a382 [INFO] running `Command { std: "docker" "start" "-a" "0dc4bc9bd59b92abd1192a920c8dc3c87a7a5871c73b39231f97db5c96f1a382", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0dc4bc9bd59b92abd1192a920c8dc3c87a7a5871c73b39231f97db5c96f1a382", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0dc4bc9bd59b92abd1192a920c8dc3c87a7a5871c73b39231f97db5c96f1a382", kill_on_drop: false }` [INFO] [stdout] 0dc4bc9bd59b92abd1192a920c8dc3c87a7a5871c73b39231f97db5c96f1a382 [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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f15b1d01c7777563338d6bb29d825635905aac5d2111c067a206ccb7bb97da22 [INFO] running `Command { std: "docker" "start" "-a" "f15b1d01c7777563338d6bb29d825635905aac5d2111c067a206ccb7bb97da22", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling memchr v2.7.1 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling anyhow v1.0.95 [INFO] [stderr] Compiling relative-path v1.9.2 [INFO] [stderr] Compiling semver v1.0.22 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking fastrand v2.1.0 [INFO] [stderr] Checking futures-timer v3.0.3 [INFO] [stderr] Checking ar v0.9.0 [INFO] [stderr] Checking elf v0.7.4 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling rstest_macros v0.19.0 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling syn v2.0.55 [INFO] [stderr] Checking tempfile v3.10.1 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Compiling regex v1.10.4 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking rstest v0.19.0 [INFO] [stderr] Checking compiler v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `BTreeMap` [INFO] [stdout] --> src/emitter/elf.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | collections::{BTreeMap, HashMap}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::emitter::text::mnemonics::Operand::Offset32` [INFO] [stdout] --> src/emitter/text/code_context.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | use crate::emitter::text::mnemonics::Operand::Offset32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CodeContext` and `mnemonics::*` [INFO] [stdout] --> src/emitter/text/code_context.rs:181:32 [INFO] [stdout] | [INFO] [stdout] 181 | use crate::emitter::text::{mnemonics::*, CodeContext}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::emitter::stack::StackManager` [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::emitter::stack::StackManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/emitter/text/stdlib.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BTreeMap` [INFO] [stdout] --> src/emitter/elf.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | collections::{BTreeMap, HashMap}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::emitter::stack::StackManager` [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::emitter::stack::StackManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/emitter/text/stdlib.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/parser.rs:227:9 [INFO] [stdout] | [INFO] [stdout] 227 | return todo!(); //Ok((Some(ast::RhsExpression::Block(Block::new(id, stmts))), tokens)); [INFO] [stdout] | ^^^^^^^------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sections_size` [INFO] [stdout] --> src/emitter/elf/sections.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | let sections_size: u64 = sections.iter().map(|s| s.sh_size).sum(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sections_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmts` [INFO] [stdout] --> src/emitter/text.rs:98:35 [INFO] [stdout] | [INFO] [stdout] 98 | ast::Statement::Block(stmts) => (), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_stmts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `return_type` [INFO] [stdout] --> src/emitter/text.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | return_type, [INFO] [stdout] | ^^^^^^^^^^^ help: try ignoring the field: `return_type: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/emitter/text.rs:155:39 [INFO] [stdout] | [INFO] [stdout] 155 | ast::RhsExpression::Block(block) => todo!(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `unary_operation` [INFO] [stdout] --> src/emitter/text.rs:199:36 [INFO] [stdout] | [INFO] [stdout] 199 | ast::Expression::Unary(unary_operation) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unary_operation` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binary_operation` [INFO] [stdout] --> src/emitter/text.rs:200:37 [INFO] [stdout] | [INFO] [stdout] 200 | ast::Expression::Binary(binary_operation) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binary_operation` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/emitter/text.rs:244:28 [INFO] [stdout] | [INFO] [stdout] 244 | Value::Int(n) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/emitter/text.rs:302:45 [INFO] [stdout] | [INFO] [stdout] 302 | fn visit_loop(&mut self, l: &ast::Loop, scope: &str) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/emitter/variables.rs:154:39 [INFO] [stdout] | [INFO] [stdout] 154 | ast::RhsExpression::Block(block) => todo!(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/parser.rs:227:9 [INFO] [stdout] | [INFO] [stdout] 227 | return todo!(); //Ok((Some(ast::RhsExpression::Block(Block::new(id, stmts))), tokens)); [INFO] [stdout] | ^^^^^^^------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/parser/ast_printer.rs:93:35 [INFO] [stdout] | [INFO] [stdout] 93 | UnaryOperation::Minus(expr) => todo!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/parser/ast_printer.rs:94:33 [INFO] [stdout] | [INFO] [stdout] 94 | UnaryOperation::Not(expr) => todo!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binary_operation` [INFO] [stdout] --> src/parser/ast_printer.rs:97:28 [INFO] [stdout] | [INFO] [stdout] 97 | Expression::Binary(binary_operation) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binary_operation` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/parser.rs:226:8 [INFO] [stdout] | [INFO] [stdout] 226 | if let (block, tokens) = block(tokens, scope)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/parser.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | if let (block, tokens) = block(tokens, scope)? { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/parser.rs:226:20 [INFO] [stdout] | [INFO] [stdout] 226 | if let (block, tokens) = block(tokens, scope)? { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/parser.rs:250:5 [INFO] [stdout] | [INFO] [stdout] 250 | scope: &str, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/parser.rs:310:37 [INFO] [stdout] | [INFO] [stdout] 310 | fn literal<'a>(tokens: &'a [Token], scope: &str) -> (Option, &'a [Token]) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sections_size` [INFO] [stdout] --> src/emitter/elf/sections.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | let sections_size: u64 = sections.iter().map(|s| s.sh_size).sum(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sections_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Program` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Program { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Item` is never used [INFO] [stdout] --> src/emitter/ast.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Item { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Float` and `Bool` are never constructed [INFO] [stdout] --> src/emitter/ast.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub enum TypeName { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 52 | Float, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 53 | Bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TypeName` 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: field `0` is never read [INFO] [stdout] --> src/emitter/ast.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 123 | Return(Option), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ControlFlow` has derived impls for the traits `Clone` and `Debug`, but these are 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] 123 - Return(Option), [INFO] [stdout] 123 + Return(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 127 | pub enum Statement { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 134 | Block(Block), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` 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 `Block` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 183 | pub enum RhsExpression { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] 184 | Expression(Expression), [INFO] [stdout] 185 | Block(Block), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RhsExpression` 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 `Binary` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 201 | pub enum Expression { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 202 | Unary(UnaryOperation), [INFO] [stdout] 203 | Binary(BinaryOperation), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` 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 `Minus` and `Not` are never constructed [INFO] [stdout] --> src/emitter/ast.rs:211:5 [INFO] [stdout] | [INFO] [stdout] 210 | pub enum UnaryOperation { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 211 | Minus(Box), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 212 | Not(Box), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnaryOperation` 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 `Plus` and `Minus` are never constructed [INFO] [stdout] --> src/emitter/ast.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 217 | pub enum BinaryOperation { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] 218 | Plus(Box, Box), [INFO] [stdout] | ^^^^ [INFO] [stdout] 219 | Minus(Box, Box), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinaryOperation` 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: method `len` is never used [INFO] [stdout] --> src/emitter/ast.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 240 | impl Literal { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 241 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `align` is never used [INFO] [stdout] --> src/emitter/elf.rs:258:4 [INFO] [stdout] | [INFO] [stdout] 258 | fn align(mut v: Vec, alignment: usize) -> Vec { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_CLASS_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub const ELF_CLASS_NONE: u8 = 0x0; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_CLASS_32_BIT` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const ELF_CLASS_32_BIT: u8 = 0x1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_DATA_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const ELF_DATA_NONE: u8 = 0x0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_DATA_BIG_ENDIAN` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const ELF_DATA_BIG_ENDIAN: u8 = 0x2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_VERSION_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const ELF_VERSION_NONE: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_VERSION_NUM` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const ELF_VERSION_NUM: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_OSABI_LINUX` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const ELF_OSABI_LINUX: u8 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const ELF_TYPE_NONE: u16 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_EXEC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const ELF_TYPE_EXEC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_DYN` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const ELF_TYPE_DYN: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_CORE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const ELF_TYPE_CORE: u16 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_LOPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const ELF_TYPE_LOPROC: u16 = 0xff00; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_HIPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const ELF_TYPE_HIPROC: u16 = 0xffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const ELF_MACHINE_NONE: u16 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_M32` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const ELF_MACHINE_M32: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SPARC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const ELF_MACHINE_SPARC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_386` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const ELF_MACHINE_386: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_68K` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const ELF_MACHINE_68K: u16 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_88K` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const ELF_MACHINE_88K: u16 = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_486` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const ELF_MACHINE_486: u16 = 6; /* Not used in Linux at least */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_860` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const ELF_MACHINE_860: u16 = 7; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_MIPS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const ELF_MACHINE_MIPS: u16 = 8; /* R3k, bigendian(?) */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_MIPS_RS4_BE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const ELF_MACHINE_MIPS_RS4_BE: u16 = 10; /* R4k BE */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_PARISC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const ELF_MACHINE_PARISC: u16 = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SPARC32PLUS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const ELF_MACHINE_SPARC32PLUS: u16 = 18; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_PPC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const ELF_MACHINE_PPC: u16 = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_PPC64` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ELF_MACHINE_PPC64: u16 = 21; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_S390` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const ELF_MACHINE_S390: u16 = 22; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SH` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:43:11 [INFO] [stdout] | [INFO] [stdout] 43 | pub const ELF_MACHINE_SH: u16 = 42; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SPARCV9` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const ELF_MACHINE_SPARCV9: u16 = 43; /* v9 = SPARC64 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_H8_300H` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const ELF_MACHINE_H8_300H: u16 = 47; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_H8S` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:46:11 [INFO] [stdout] | [INFO] [stdout] 46 | pub const ELF_MACHINE_H8S: u16 = 48; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_IA_64` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const ELF_MACHINE_IA_64: u16 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_CRIS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const ELF_MACHINE_CRIS: u16 = 76; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_V850` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const ELF_MACHINE_V850: u16 = 87; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_ALPHA` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const ELF_MACHINE_ALPHA: u16 = 0x9026; /* Interim Alpha that stuck around */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_CYGNUS_V850` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const ELF_MACHINE_CYGNUS_V850: u16 = 0x9080; /* Old v850 ID used by Cygnus */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_S390_OLD` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const ELF_MACHINE_S390_OLD: u16 = 0xA390; /* Obsolete interim value for S/390 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_NULL` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const PROGRAM_TYPE_NULL: u32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_LOAD` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const PROGRAM_TYPE_LOAD: u32 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_DYNAMIC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const PROGRAM_TYPE_DYNAMIC: u32 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_INTERP` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const PROGRAM_TYPE_INTERP: u32 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_NOTE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const PROGRAM_TYPE_NOTE: u32 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_SHLIB` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const PROGRAM_TYPE_SHLIB: u32 = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_PHDR` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const PROGRAM_TYPE_PHDR: u32 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_LOOS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const PROGRAM_TYPE_LOOS: u32 = 0x60000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_HIOS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const PROGRAM_TYPE_HIOS: u32 = 0x6fffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_LOPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const PROGRAM_TYPE_LOPROC: u32 = 0x70000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_HIPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const PROGRAM_TYPE_HIPROC: u32 = 0x7fffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_GNU_EH_FRAME` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const PROGRAM_TYPE_GNU_EH_FRAME: u32 = 0x6474e550; /* Extension, eh? */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_HEADER_EXEC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const PROGRAM_HEADER_EXEC: u32 = 0x1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_HEADER_WRITE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const PROGRAM_HEADER_WRITE: u32 = 0x2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_HEADER_READ` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const PROGRAM_HEADER_READ: u32 = 0x4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_NULL` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const SEGMENT_TYPE_NULL: u32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_HASH` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const SEGMENT_TYPE_HASH: u32 = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_DYNAMIC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | pub const SEGMENT_TYPE_DYNAMIC: u32 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_NOTE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | pub const SEGMENT_TYPE_NOTE: u32 = 7; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_NOBITS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const SEGMENT_TYPE_NOBITS: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_REL` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const SEGMENT_TYPE_REL: u32 = 9; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_SHLIB` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const SEGMENT_TYPE_SHLIB: u32 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_DYNSYM` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const SEGMENT_TYPE_DYNSYM: u32 = 11; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_INIT_ARRAY` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const SEGMENT_TYPE_INIT_ARRAY: u32 = 14; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_FINI_ARRAY` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const SEGMENT_TYPE_FINI_ARRAY: u32 = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_PREINIT_ARRAY` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const SEGMENT_TYPE_PREINIT_ARRAY: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_GROUP` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | pub const SEGMENT_TYPE_GROUP: u32 = 17; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_SYMTAB_SHNDX` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | pub const SEGMENT_TYPE_SYMTAB_SHNDX: u32 = 18; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_LOPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | pub const SEGMENT_TYPE_LOPROC: u32 = 0x70000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_HIPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:90:11 [INFO] [stdout] | [INFO] [stdout] 90 | pub const SEGMENT_TYPE_HIPROC: u32 = 0x7fffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_LOUSER` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:91:11 [INFO] [stdout] | [INFO] [stdout] 91 | pub const SEGMENT_TYPE_LOUSER: u32 = 0x80000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_HIUSER` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | pub const SEGMENT_TYPE_HIUSER: u32 = 0xffffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_MERGE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub const SEGMENT_FLAGS_MERGE: u64 = 1 << 4; /* Might be merged */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_STRINGS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:99:11 [INFO] [stdout] | [INFO] [stdout] 99 | pub const SEGMENT_FLAGS_STRINGS: u64 = 1 << 5; /* Contains nul-terminated strings */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_INFO_LINK` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:100:11 [INFO] [stdout] | [INFO] [stdout] 100 | pub const SEGMENT_FLAGS_INFO_LINK: u64 = 1 << 6; /* `sh_info' contains SHT index */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_LINK_ORDER` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | pub const SEGMENT_FLAGS_LINK_ORDER: u64 = 1 << 7; /* Preserve order after combining */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_OS_NONCONFORMING` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | pub const SEGMENT_FLAGS_OS_NONCONFORMING: u64 = 1 << 8; /* Non-standard OS specific handling required */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_GROUP` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:103:11 [INFO] [stdout] | [INFO] [stdout] 103 | pub const SEGMENT_FLAGS_GROUP: u64 = 1 << 9; /* Section is member of a group */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_TLS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:104:11 [INFO] [stdout] | [INFO] [stdout] 104 | pub const SEGMENT_FLAGS_TLS: u64 = 1 << 10; /* Section hold thread-local data */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_SECTION_OFFSET` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const DATA_SECTION_OFFSET: DWord = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_SECTION_ADDRESS_START` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const DATA_SECTION_ADDRESS_START: DWord = VIRTUAL_ADDRESS_START + DATA_SECTION_OFFSET; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProgramHeader` is never constructed [INFO] [stdout] --> src/emitter/elf/sections.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct ProgramHeader { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_symtab_section_header` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | pub fn build_symtab_section_header() -> SectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_strtab_section_header` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:201:8 [INFO] [stdout] | [INFO] [stdout] 201 | pub fn build_strtab_section_header() -> SectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_rel_text_section_header` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:216:8 [INFO] [stdout] | [INFO] [stdout] 216 | pub fn build_rel_text_section_header() -> SectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Runtime` is never constructed [INFO] [stdout] --> src/emitter/symbols.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub enum DataSymbol { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 26 | Comptime, [INFO] [stdout] 27 | Runtime, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataSymbol` 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 `Undefined` and `Absolute` are never constructed [INFO] [stdout] --> src/emitter/symbols.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub enum Section { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 32 | Undefined, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | Absolute, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Section` 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 `Global` is never constructed [INFO] [stdout] --> src/emitter/symbols.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub enum SymbolScope { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 40 | Local, [INFO] [stdout] 41 | Global, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SymbolScope` 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: enum `Arg` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum Arg { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_REGISTERS` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const ARG_REGISTERS: &[register::Register] = [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `push_args` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn push_args(code_context: &mut CodeContext, stack: &mut StackManager, args: &[Variable]) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pop_args` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn pop_args(code_context: &mut CodeContext, stack: &mut StackManager, args_count: usize) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_EXT_INDEX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const REGISTER_EXT_INDEX: u8 = 0x30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REX_X` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const REX_X: u8 = 0b01000010; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MOD_ADDRESS` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const MOD_ADDRESS: u8 = 0b00; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Offset8` is never constructed [INFO] [stdout] --> src/emitter/text/mnemonics.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 112 | pub enum Operand { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 119 | Offset8(u8), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Operand` 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: methods `get_name`, `set_op1`, and `set_op2` are never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 253 | impl Mnemonic { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_name(&self) -> MnemonicName { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn set_op1(&mut self, op: impl Into) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn set_op2(&mut self, op: impl Into) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Jmp`, `Jle`, `Jge`, `Je`, and `Jz` are never constructed [INFO] [stdout] --> src/emitter/text/mnemonics.rs:559:5 [INFO] [stdout] | [INFO] [stdout] 542 | pub enum MnemonicName { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 559 | Jmp, [INFO] [stdout] | ^^^ [INFO] [stdout] 560 | Jl, [INFO] [stdout] 561 | Jle, [INFO] [stdout] | ^^^ [INFO] [stdout] 562 | Jg, [INFO] [stdout] 563 | Jge, [INFO] [stdout] | ^^^ [INFO] [stdout] 564 | Je, [INFO] [stdout] | ^^ [INFO] [stdout] 565 | Jz, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `MnemonicName` 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: constant `AX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | AX = (0x0), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EAX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 75 | CX = (0x1), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ECX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | DX = (0x2), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EDX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | BX = (0x3), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EBX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RBX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:56:35 [INFO] [stdout] | [INFO] [stdout] 56 | pub const []: Register = Register::new($attr, RegisterSize::Q, false); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | SP = (0x4), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ESP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | BP = (0x5), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EBP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | SI = (0x6), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ESI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | DI = (0x7), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EDI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R8D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R8W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R9D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R9W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R10D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R10W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R11D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R11W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `offsets` are never read [INFO] [stdout] --> src/emitter/text/code_context.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Call { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 15 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 16 | pub offsets: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Call` 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: fields `calls`, `symbols`, and `image_base` are never read [INFO] [stdout] --> src/emitter/text/code_context.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct CodeContext { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 24 | calls: BTreeMap, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | labels: BTreeMap, [INFO] [stdout] 26 | symbols: BTreeMap, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 27 | relocations: Vec, [INFO] [stdout] 28 | image_base: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CodeContext` 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: multiple methods are never used [INFO] [stdout] --> src/emitter/text/code_context.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl CodeContext { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn get_pc(&self) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn get(&self, i: usize) -> Mnemonic { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn get_mut(&mut self, i: usize) -> &mut Mnemonic { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn get_offset(&self, i: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn get_code_size_with_calls(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn get_calls(&self) -> BTreeMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn get_label_offset(&self, label: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn compute_calls( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn compute_data(&mut self, data_section_start: u32, const_data: BTreeMap) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compile_asm` is never used [INFO] [stdout] --> src/emitter/text/code_context.rs:185:8 [INFO] [stdout] | [INFO] [stdout] 185 | fn compile_asm(code: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_eq_hex` is never used [INFO] [stdout] --> src/emitter/text/code_context.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | fn assert_eq_hex(actual: Vec, expected: Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `StdHandle` is never used [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum StdHandle { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn print(code_context: &mut CodeContext) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exit` is never used [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn exit(code_context: &mut CodeContext, exit_code: u64) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DataRef` is never constructed [INFO] [stdout] --> src/emitter/variables.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct DataRef { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/emitter/variables.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | DataSection(u64), [INFO] [stdout] | ----------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ValueLocation` has derived impls for the traits `Debug` and `Clone`, but these are 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] 68 - DataSection(u64), [INFO] [stdout] 68 + DataSection(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_vec` is never used [INFO] [stdout] --> src/emitter/variables.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl Variable { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn as_vec(&self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmts` [INFO] [stdout] --> src/emitter/text.rs:98:35 [INFO] [stdout] | [INFO] [stdout] 98 | ast::Statement::Block(stmts) => (), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_stmts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `return_type` [INFO] [stdout] --> src/emitter/text.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | return_type, [INFO] [stdout] | ^^^^^^^^^^^ help: try ignoring the field: `return_type: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/emitter/text.rs:155:39 [INFO] [stdout] | [INFO] [stdout] 155 | ast::RhsExpression::Block(block) => todo!(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `unary_operation` [INFO] [stdout] --> src/emitter/text.rs:199:36 [INFO] [stdout] | [INFO] [stdout] 199 | ast::Expression::Unary(unary_operation) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unary_operation` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binary_operation` [INFO] [stdout] --> src/emitter/text.rs:200:37 [INFO] [stdout] | [INFO] [stdout] 200 | ast::Expression::Binary(binary_operation) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binary_operation` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/emitter/text.rs:244:28 [INFO] [stdout] | [INFO] [stdout] 244 | Value::Int(n) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/emitter/text.rs:302:45 [INFO] [stdout] | [INFO] [stdout] 302 | fn visit_loop(&mut self, l: &ast::Loop, scope: &str) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/emitter/variables.rs:154:39 [INFO] [stdout] | [INFO] [stdout] 154 | ast::RhsExpression::Block(block) => todo!(), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/parser/ast_printer.rs:93:35 [INFO] [stdout] | [INFO] [stdout] 93 | UnaryOperation::Minus(expr) => todo!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/parser/ast_printer.rs:94:33 [INFO] [stdout] | [INFO] [stdout] 94 | UnaryOperation::Not(expr) => todo!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binary_operation` [INFO] [stdout] --> src/parser/ast_printer.rs:97:28 [INFO] [stdout] | [INFO] [stdout] 97 | Expression::Binary(binary_operation) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binary_operation` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/parser.rs:226:8 [INFO] [stdout] | [INFO] [stdout] 226 | if let (block, tokens) = block(tokens, scope)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/parser.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | if let (block, tokens) = block(tokens, scope)? { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/parser.rs:226:20 [INFO] [stdout] | [INFO] [stdout] 226 | if let (block, tokens) = block(tokens, scope)? { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/parser.rs:250:5 [INFO] [stdout] | [INFO] [stdout] 250 | scope: &str, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `scope` [INFO] [stdout] --> src/parser.rs:310:37 [INFO] [stdout] | [INFO] [stdout] 310 | fn literal<'a>(tokens: &'a [Token], scope: &str) -> (Option, &'a [Token]) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_scope` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Program` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Program { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Item` is never used [INFO] [stdout] --> src/emitter/ast.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Item { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Float` and `Bool` are never constructed [INFO] [stdout] --> src/emitter/ast.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub enum TypeName { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 52 | Float, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 53 | Bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TypeName` 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: field `0` is never read [INFO] [stdout] --> src/emitter/ast.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 123 | Return(Option), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ControlFlow` has derived impls for the traits `Clone` and `Debug`, but these are 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] 123 - Return(Option), [INFO] [stdout] 123 + Return(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 127 | pub enum Statement { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 134 | Block(Block), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` 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 `Block` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 183 | pub enum RhsExpression { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] 184 | Expression(Expression), [INFO] [stdout] 185 | Block(Block), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RhsExpression` 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 `Binary` is never constructed [INFO] [stdout] --> src/emitter/ast.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 201 | pub enum Expression { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 202 | Unary(UnaryOperation), [INFO] [stdout] 203 | Binary(BinaryOperation), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` 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 `Minus` and `Not` are never constructed [INFO] [stdout] --> src/emitter/ast.rs:211:5 [INFO] [stdout] | [INFO] [stdout] 210 | pub enum UnaryOperation { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 211 | Minus(Box), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 212 | Not(Box), [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnaryOperation` 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 `Plus` and `Minus` are never constructed [INFO] [stdout] --> src/emitter/ast.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 217 | pub enum BinaryOperation { [INFO] [stdout] | --------------- variants in this enum [INFO] [stdout] 218 | Plus(Box, Box), [INFO] [stdout] | ^^^^ [INFO] [stdout] 219 | Minus(Box, Box), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinaryOperation` 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: method `len` is never used [INFO] [stdout] --> src/emitter/ast.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 240 | impl Literal { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 241 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `align` is never used [INFO] [stdout] --> src/emitter/elf.rs:258:4 [INFO] [stdout] | [INFO] [stdout] 258 | fn align(mut v: Vec, alignment: usize) -> Vec { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_CLASS_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub const ELF_CLASS_NONE: u8 = 0x0; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_CLASS_32_BIT` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const ELF_CLASS_32_BIT: u8 = 0x1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_DATA_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const ELF_DATA_NONE: u8 = 0x0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_DATA_BIG_ENDIAN` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const ELF_DATA_BIG_ENDIAN: u8 = 0x2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_VERSION_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const ELF_VERSION_NONE: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_VERSION_NUM` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const ELF_VERSION_NUM: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_OSABI_LINUX` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const ELF_OSABI_LINUX: u8 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const ELF_TYPE_NONE: u16 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_EXEC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const ELF_TYPE_EXEC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_DYN` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const ELF_TYPE_DYN: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_CORE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const ELF_TYPE_CORE: u16 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_LOPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const ELF_TYPE_LOPROC: u16 = 0xff00; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_TYPE_HIPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const ELF_TYPE_HIPROC: u16 = 0xffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_NONE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const ELF_MACHINE_NONE: u16 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_M32` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const ELF_MACHINE_M32: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SPARC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const ELF_MACHINE_SPARC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_386` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const ELF_MACHINE_386: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_68K` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const ELF_MACHINE_68K: u16 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_88K` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const ELF_MACHINE_88K: u16 = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_486` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const ELF_MACHINE_486: u16 = 6; /* Not used in Linux at least */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_860` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const ELF_MACHINE_860: u16 = 7; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_MIPS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const ELF_MACHINE_MIPS: u16 = 8; /* R3k, bigendian(?) */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_MIPS_RS4_BE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const ELF_MACHINE_MIPS_RS4_BE: u16 = 10; /* R4k BE */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_PARISC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const ELF_MACHINE_PARISC: u16 = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SPARC32PLUS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const ELF_MACHINE_SPARC32PLUS: u16 = 18; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_PPC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const ELF_MACHINE_PPC: u16 = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_PPC64` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const ELF_MACHINE_PPC64: u16 = 21; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_S390` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const ELF_MACHINE_S390: u16 = 22; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SH` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:43:11 [INFO] [stdout] | [INFO] [stdout] 43 | pub const ELF_MACHINE_SH: u16 = 42; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_SPARCV9` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const ELF_MACHINE_SPARCV9: u16 = 43; /* v9 = SPARC64 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_H8_300H` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const ELF_MACHINE_H8_300H: u16 = 47; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_H8S` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:46:11 [INFO] [stdout] | [INFO] [stdout] 46 | pub const ELF_MACHINE_H8S: u16 = 48; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_IA_64` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const ELF_MACHINE_IA_64: u16 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_CRIS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const ELF_MACHINE_CRIS: u16 = 76; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_V850` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const ELF_MACHINE_V850: u16 = 87; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_ALPHA` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const ELF_MACHINE_ALPHA: u16 = 0x9026; /* Interim Alpha that stuck around */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_CYGNUS_V850` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const ELF_MACHINE_CYGNUS_V850: u16 = 0x9080; /* Old v850 ID used by Cygnus */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ELF_MACHINE_S390_OLD` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const ELF_MACHINE_S390_OLD: u16 = 0xA390; /* Obsolete interim value for S/390 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_NULL` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const PROGRAM_TYPE_NULL: u32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_LOAD` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const PROGRAM_TYPE_LOAD: u32 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_DYNAMIC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const PROGRAM_TYPE_DYNAMIC: u32 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_INTERP` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const PROGRAM_TYPE_INTERP: u32 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_NOTE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const PROGRAM_TYPE_NOTE: u32 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_SHLIB` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const PROGRAM_TYPE_SHLIB: u32 = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_PHDR` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const PROGRAM_TYPE_PHDR: u32 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_LOOS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const PROGRAM_TYPE_LOOS: u32 = 0x60000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_HIOS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const PROGRAM_TYPE_HIOS: u32 = 0x6fffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_LOPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const PROGRAM_TYPE_LOPROC: u32 = 0x70000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_HIPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const PROGRAM_TYPE_HIPROC: u32 = 0x7fffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_TYPE_GNU_EH_FRAME` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const PROGRAM_TYPE_GNU_EH_FRAME: u32 = 0x6474e550; /* Extension, eh? */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_HEADER_EXEC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const PROGRAM_HEADER_EXEC: u32 = 0x1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_HEADER_WRITE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const PROGRAM_HEADER_WRITE: u32 = 0x2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROGRAM_HEADER_READ` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const PROGRAM_HEADER_READ: u32 = 0x4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_NULL` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const SEGMENT_TYPE_NULL: u32 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_HASH` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const SEGMENT_TYPE_HASH: u32 = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_DYNAMIC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | pub const SEGMENT_TYPE_DYNAMIC: u32 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_NOTE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | pub const SEGMENT_TYPE_NOTE: u32 = 7; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_NOBITS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const SEGMENT_TYPE_NOBITS: u32 = 8; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_REL` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const SEGMENT_TYPE_REL: u32 = 9; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_SHLIB` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const SEGMENT_TYPE_SHLIB: u32 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_DYNSYM` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const SEGMENT_TYPE_DYNSYM: u32 = 11; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_INIT_ARRAY` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const SEGMENT_TYPE_INIT_ARRAY: u32 = 14; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_FINI_ARRAY` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const SEGMENT_TYPE_FINI_ARRAY: u32 = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_PREINIT_ARRAY` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const SEGMENT_TYPE_PREINIT_ARRAY: u32 = 16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_GROUP` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | pub const SEGMENT_TYPE_GROUP: u32 = 17; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_SYMTAB_SHNDX` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | pub const SEGMENT_TYPE_SYMTAB_SHNDX: u32 = 18; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_LOPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | pub const SEGMENT_TYPE_LOPROC: u32 = 0x70000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_HIPROC` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:90:11 [INFO] [stdout] | [INFO] [stdout] 90 | pub const SEGMENT_TYPE_HIPROC: u32 = 0x7fffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_LOUSER` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:91:11 [INFO] [stdout] | [INFO] [stdout] 91 | pub const SEGMENT_TYPE_LOUSER: u32 = 0x80000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_TYPE_HIUSER` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | pub const SEGMENT_TYPE_HIUSER: u32 = 0xffffffff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_MERGE` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:98:11 [INFO] [stdout] | [INFO] [stdout] 98 | pub const SEGMENT_FLAGS_MERGE: u64 = 1 << 4; /* Might be merged */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_STRINGS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:99:11 [INFO] [stdout] | [INFO] [stdout] 99 | pub const SEGMENT_FLAGS_STRINGS: u64 = 1 << 5; /* Contains nul-terminated strings */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_INFO_LINK` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:100:11 [INFO] [stdout] | [INFO] [stdout] 100 | pub const SEGMENT_FLAGS_INFO_LINK: u64 = 1 << 6; /* `sh_info' contains SHT index */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_LINK_ORDER` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | pub const SEGMENT_FLAGS_LINK_ORDER: u64 = 1 << 7; /* Preserve order after combining */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_OS_NONCONFORMING` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | pub const SEGMENT_FLAGS_OS_NONCONFORMING: u64 = 1 << 8; /* Non-standard OS specific handling required */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_GROUP` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:103:11 [INFO] [stdout] | [INFO] [stdout] 103 | pub const SEGMENT_FLAGS_GROUP: u64 = 1 << 9; /* Section is member of a group */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEGMENT_FLAGS_TLS` is never used [INFO] [stdout] --> src/emitter/elf/defs.rs:104:11 [INFO] [stdout] | [INFO] [stdout] 104 | pub const SEGMENT_FLAGS_TLS: u64 = 1 << 10; /* Section hold thread-local data */ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_SECTION_OFFSET` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const DATA_SECTION_OFFSET: DWord = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_SECTION_ADDRESS_START` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const DATA_SECTION_ADDRESS_START: DWord = VIRTUAL_ADDRESS_START + DATA_SECTION_OFFSET; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProgramHeader` is never constructed [INFO] [stdout] --> src/emitter/elf/sections.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct ProgramHeader { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_symtab_section_header` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 186 | pub fn build_symtab_section_header() -> SectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_strtab_section_header` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:201:8 [INFO] [stdout] | [INFO] [stdout] 201 | pub fn build_strtab_section_header() -> SectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_rel_text_section_header` is never used [INFO] [stdout] --> src/emitter/elf/sections.rs:216:8 [INFO] [stdout] | [INFO] [stdout] 216 | pub fn build_rel_text_section_header() -> SectionHeader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Runtime` is never constructed [INFO] [stdout] --> src/emitter/symbols.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub enum DataSymbol { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 26 | Comptime, [INFO] [stdout] 27 | Runtime, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataSymbol` 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 `Undefined` and `Absolute` are never constructed [INFO] [stdout] --> src/emitter/symbols.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub enum Section { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 32 | Undefined, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | Absolute, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Section` 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 `Global` is never constructed [INFO] [stdout] --> src/emitter/symbols.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub enum SymbolScope { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] 40 | Local, [INFO] [stdout] 41 | Global, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SymbolScope` 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: enum `Arg` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum Arg { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_REGISTERS` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const ARG_REGISTERS: &[register::Register] = [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `push_args` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn push_args(code_context: &mut CodeContext, stack: &mut StackManager, args: &[Variable]) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pop_args` is never used [INFO] [stdout] --> src/emitter/text/abi/windows.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn pop_args(code_context: &mut CodeContext, stack: &mut StackManager, args_count: usize) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_EXT_INDEX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const REGISTER_EXT_INDEX: u8 = 0x30; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REX_X` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const REX_X: u8 = 0b01000010; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MOD_ADDRESS` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const MOD_ADDRESS: u8 = 0b00; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_name`, `set_op1`, and `set_op2` are never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 253 | impl Mnemonic { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn get_name(&self) -> MnemonicName { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn set_op1(&mut self, op: impl Into) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn set_op2(&mut self, op: impl Into) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Jge`, `Je`, and `Jz` are never constructed [INFO] [stdout] --> src/emitter/text/mnemonics.rs:563:5 [INFO] [stdout] | [INFO] [stdout] 542 | pub enum MnemonicName { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 563 | Jge, [INFO] [stdout] | ^^^ [INFO] [stdout] 564 | Je, [INFO] [stdout] | ^^ [INFO] [stdout] 565 | Jz, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `MnemonicName` 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: constant `DX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | DX = (0x2), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EDX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | BX = (0x3), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EBX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RBX` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:56:35 [INFO] [stdout] | [INFO] [stdout] 56 | pub const []: Register = Register::new($attr, RegisterSize::Q, false); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | SP = (0x4), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ESP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | BP = (0x5), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EBP` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | SI = (0x6), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ESI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | DI = (0x7), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EDI` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 55 | pub const []: Register = Register::new($attr, RegisterSize::D, false ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R8W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R9D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R9W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R10D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R10W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R11D` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:62:35 [INFO] [stdout] | [INFO] [stdout] 62 | pub const [<$name D>]: Register = Register::new($attr, RegisterSize::D, true ); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `R11W` is never used [INFO] [stdout] --> src/emitter/text/mnemonics.rs:63:35 [INFO] [stdout] | [INFO] [stdout] 63 | pub const [<$name W>]: Register = Register::new($attr, RegisterSize::W, true); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | / registers!( [INFO] [stdout] 74 | | AX = (0x0), [INFO] [stdout] 75 | | CX = (0x1), [INFO] [stdout] 76 | | DX = (0x2), [INFO] [stdout] ... | [INFO] [stdout] 85 | | R11 = (0x3, ext) [INFO] [stdout] 86 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ext_match` which comes from the expansion of the macro `registers` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbol` and `offsets` are never read [INFO] [stdout] --> src/emitter/text/code_context.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Call { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 15 | pub symbol: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 16 | pub offsets: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Call` 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: fields `calls`, `symbols`, and `image_base` are never read [INFO] [stdout] --> src/emitter/text/code_context.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct CodeContext { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 24 | calls: BTreeMap, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 25 | labels: BTreeMap, [INFO] [stdout] 26 | symbols: BTreeMap, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 27 | relocations: Vec, [INFO] [stdout] 28 | image_base: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CodeContext` 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: multiple methods are never used [INFO] [stdout] --> src/emitter/text/code_context.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl CodeContext { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn get_pc(&self) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn get(&self, i: usize) -> Mnemonic { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn get_mut(&mut self, i: usize) -> &mut Mnemonic { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn get_offset(&self, i: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn get_code_size_with_calls(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn get_calls(&self) -> BTreeMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn get_label_offset(&self, label: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn compute_calls( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn compute_data(&mut self, data_section_start: u32, const_data: BTreeMap) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `StdHandle` is never used [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum StdHandle { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn print(code_context: &mut CodeContext) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exit` is never used [INFO] [stdout] --> src/emitter/text/stdlib/windows.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn exit(code_context: &mut CodeContext, exit_code: u64) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DataRef` is never constructed [INFO] [stdout] --> src/emitter/variables.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct DataRef { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/emitter/variables.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | DataSection(u64), [INFO] [stdout] | ----------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ValueLocation` has derived impls for the traits `Debug` and `Clone`, but these are 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] 68 - DataSection(u64), [INFO] [stdout] 68 + DataSection(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_vec` is never used [INFO] [stdout] --> src/emitter/variables.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl Variable { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn as_vec(&self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_4_CxAx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:674:8 [INFO] [stdout] | [INFO] [stdout] 674 | fn test_mov( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_4_cx_ax` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_5_EcxEax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:674:8 [INFO] [stdout] | [INFO] [stdout] 674 | fn test_mov( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_5_ecx_eax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_6_RcxRax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:674:8 [INFO] [stdout] | [INFO] [stdout] 674 | fn test_mov( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_6_rcx_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_R8Rax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:687:8 [INFO] [stdout] | [INFO] [stdout] 687 | fn test_mov_ext( [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `case_2_r8_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_3_R8R9` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:687:8 [INFO] [stdout] | [INFO] [stdout] 687 | fn test_mov_ext( [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `case_3_r8_r9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_RcxRax8` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:703:8 [INFO] [stdout] | [INFO] [stdout] 703 | fn test_mov_offset( [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `case_1_rcx_rax8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_RcxRax32` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:703:8 [INFO] [stdout] | [INFO] [stdout] 703 | fn test_mov_offset( [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `case_2_rcx_rax32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_3_Rcx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:717:8 [INFO] [stdout] | [INFO] [stdout] 717 | fn test_push(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `case_3_rcx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Rcx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:725:8 [INFO] [stdout] | [INFO] [stdout] 725 | fn test_pop(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_rcx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_R9` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:725:8 [INFO] [stdout] | [INFO] [stdout] 725 | fn test_pop(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_2_r9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_Rimm32` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:734:8 [INFO] [stdout] | [INFO] [stdout] 734 | fn test_add( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_2_rimm32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_3_RcxRax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:734:8 [INFO] [stdout] | [INFO] [stdout] 734 | fn test_add( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_3_rcx_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_Rimm32` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:747:8 [INFO] [stdout] | [INFO] [stdout] 747 | fn test_sub( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_2_rimm32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_3_RcxRax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:747:8 [INFO] [stdout] | [INFO] [stdout] 747 | fn test_sub( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_3_rcx_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_RcxRax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:758:8 [INFO] [stdout] | [INFO] [stdout] 758 | fn test_xor( [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_rcx_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Eax` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:771:8 [INFO] [stdout] | [INFO] [stdout] 771 | fn test_div(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_eax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_Rcx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:771:8 [INFO] [stdout] | [INFO] [stdout] 771 | fn test_div(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_2_rcx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_3_Rcx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:771:8 [INFO] [stdout] | [INFO] [stdout] 771 | fn test_div(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_3_rcx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Rcx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:778:8 [INFO] [stdout] | [INFO] [stdout] 778 | fn test_inc(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_rcx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Rcx` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:785:8 [INFO] [stdout] | [INFO] [stdout] 785 | fn test_inc_offset( [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `case_1_rcx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Offset32` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:796:8 [INFO] [stdout] | [INFO] [stdout] 796 | fn test_call(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `case_1_offset32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_NoOp` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:803:8 [INFO] [stdout] | [INFO] [stdout] 803 | fn test_ret(#[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_no_op` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Imm64` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:825:8 [INFO] [stdout] | [INFO] [stdout] 825 | fn test_jmp(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_imm64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_1_Offset32` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:833:8 [INFO] [stdout] | [INFO] [stdout] 833 | fn test_jle(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_1_offset32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `case_2_Offset32` should have a snake case name [INFO] [stdout] --> src/emitter/text/mnemonics.rs:833:8 [INFO] [stdout] | [INFO] [stdout] 833 | fn test_jle(#[case] op1: impl Into, #[case] expected: Vec) { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `case_2_offset32` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.49s [INFO] running `Command { std: "docker" "inspect" "f15b1d01c7777563338d6bb29d825635905aac5d2111c067a206ccb7bb97da22", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f15b1d01c7777563338d6bb29d825635905aac5d2111c067a206ccb7bb97da22", kill_on_drop: false }` [INFO] [stdout] f15b1d01c7777563338d6bb29d825635905aac5d2111c067a206ccb7bb97da22