[INFO] cloning repository https://github.com/TaarnN/Noisia [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TaarnN/Noisia" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTaarnN%2FNoisia", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTaarnN%2FNoisia'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3f115277c0a843cf56b13f56a0b17c57e006d7ed [INFO] testing TaarnN/Noisia against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTaarnN%2FNoisia" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/TaarnN/Noisia [INFO] finished tweaking git repo https://github.com/TaarnN/Noisia [INFO] tweaked toml for git repo https://github.com/TaarnN/Noisia written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/TaarnN/Noisia on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/TaarnN/Noisia 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 857aa3af8fb348fa12690171a2bb5092dc6bcfbdc13dc78daf6bb092b4e2ef83 [INFO] running `Command { std: "docker" "start" "-a" "857aa3af8fb348fa12690171a2bb5092dc6bcfbdc13dc78daf6bb092b4e2ef83", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "857aa3af8fb348fa12690171a2bb5092dc6bcfbdc13dc78daf6bb092b4e2ef83", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "857aa3af8fb348fa12690171a2bb5092dc6bcfbdc13dc78daf6bb092b4e2ef83", kill_on_drop: false }` [INFO] [stdout] 857aa3af8fb348fa12690171a2bb5092dc6bcfbdc13dc78daf6bb092b4e2ef83 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5f0d859140d239e2426cf532edf796abf366eaef4faa513fd5729c0293e58ef8 [INFO] running `Command { std: "docker" "start" "-a" "5f0d859140d239e2426cf532edf796abf366eaef4faa513fd5729c0293e58ef8", kill_on_drop: false }` [INFO] [stderr] Compiling Noisia v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/parser.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | idx, [INFO] [stdout] | ^^^ help: try ignoring the field: `idx: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/parser.rs:419:43 [INFO] [stdout] | [INFO] [stdout] 419 | if let Stmt::Expr(expr) = stmt { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `name` is never read [INFO] [stdout] --> src/parser.rs:1015:17 [INFO] [stdout] | [INFO] [stdout] 1015 | let mut name = String::new(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EOF` is never constructed [INFO] [stdout] --> src/parser.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum ParseError { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | EOF { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Trait`, `Impl`, and `Class` are never constructed [INFO] [stdout] --> src/parser.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub enum Item { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 55 | Trait(TraitDecl), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | Impl(ImplDecl), [INFO] [stdout] | ^^^^ [INFO] [stdout] 57 | Class(ClassDecl), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Item` 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 `path` is never read [INFO] [stdout] --> src/parser.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct ModuleDecl { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 63 | pub path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ModuleDecl` 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 `path` and `symbols` are never read [INFO] [stdout] --> src/parser.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct ImportDecl { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 68 | pub path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 69 | pub symbols: Option>, // `import A::{x,y}` or `import A::B` [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImportDecl` 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 fields are never read [INFO] [stdout] --> src/parser.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct FunctionDecl { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 74 | pub attributes: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 75 | pub visibility: Visibility, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 76 | pub modifiers: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 77 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 78 | pub is_async: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 79 | pub generics: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 80 | pub params: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 81 | pub ret_type: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 82 | pub effects: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 83 | pub where_clauses: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 84 | pub body: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionDecl` 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 `name` and `constraints` are never read [INFO] [stdout] --> src/parser.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct GenericParam { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 89 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 90 | pub constraints: Vec, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GenericParam` 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/parser.rs:95:16 [INFO] [stdout] | [INFO] [stdout] 95 | TraitBound(String), [INFO] [stdout] | ---------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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] 95 - TraitBound(String), [INFO] [stdout] 95 + TraitBound(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:96:19 [INFO] [stdout] | [INFO] [stdout] 96 | LifetimeBound(String), [INFO] [stdout] | ------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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] 96 - LifetimeBound(String), [INFO] [stdout] 96 + LifetimeBound(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/parser.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | TypeEq(String, String), [INFO] [stdout] | ------ ^^^^^^ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 97 - TypeEq(String, String), [INFO] [stdout] 97 + TypeEq((), ()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:98:15 [INFO] [stdout] | [INFO] [stdout] 98 | SubtypeOf(String), [INFO] [stdout] | --------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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] 98 - SubtypeOf(String), [INFO] [stdout] 98 + SubtypeOf(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SupertypeOf` is never constructed [INFO] [stdout] --> src/parser.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 94 | pub enum TypeConstraint { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 99 | SupertypeOf(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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 `param_name` and `constraints` are never read [INFO] [stdout] --> src/parser.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 103 | pub struct WhereClause { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 104 | pub param_name: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 105 | pub constraints: Vec, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WhereClause` 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 `name` and `params` are never read [INFO] [stdout] --> src/parser.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct Effect { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 110 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 111 | pub params: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Effect` 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 `Protected`, `Internal`, and `Package` are never constructed [INFO] [stdout] --> src/parser.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub enum Visibility { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 118 | Protected, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 119 | Internal, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 120 | Package, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Visibility` 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 `name`, `typ`, and `default` are never read [INFO] [stdout] --> src/parser.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct Param { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 132 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 133 | pub typ: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 134 | pub default: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Param` 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 `name` and `fields` are never read [INFO] [stdout] --> src/parser.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 138 | pub struct StructDecl { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 139 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 140 | // simple fields (name, type) [INFO] [stdout] 141 | pub fields: Vec<(String, TypeRef)>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StructDecl` 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 `name` and `variants` are never read [INFO] [stdout] --> src/parser.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct EnumDecl { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 146 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 147 | pub variants: Vec, // simplified [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnumDecl` 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 `name` and `methods` are never read [INFO] [stdout] --> src/parser.rs:152:9 [INFO] [stdout] | [INFO] [stdout] 151 | pub struct TraitDecl { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 152 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 153 | pub methods: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TraitDecl` 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 `trait_name`, `target`, and `methods` are never read [INFO] [stdout] --> src/parser.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 157 | pub struct ImplDecl { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 158 | pub trait_name: Option, // None = inherent impl, Some("Trait") = trait impl [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 159 | pub target: TypeRef, // type name เช่น "Point" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 160 | pub methods: Vec, // body ของ impl [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImplDecl` 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 `name`, `fields`, `constructors`, and `methods` are never read [INFO] [stdout] --> src/parser.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 164 | pub struct ClassDecl { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 165 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 166 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 167 | pub constructors: Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 168 | pub methods: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ClassDecl` 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 `vis`, `name`, `typ`, and `value` are never read [INFO] [stdout] --> src/parser.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 172 | pub struct ClassFieldDecl { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 173 | pub vis: Visibility, [INFO] [stdout] | ^^^ [INFO] [stdout] 174 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 175 | pub typ: TypeRef, [INFO] [stdout] | ^^^ [INFO] [stdout] 176 | pub value: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ClassFieldDecl` 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 `name`, `params`, and `body` are never read [INFO] [stdout] --> src/parser.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct ConstructorDecl { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 181 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 182 | pub params: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 183 | pub body: Block, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConstructorDecl` 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 `stmts` is never read [INFO] [stdout] --> src/parser.rs:188:9 [INFO] [stdout] | [INFO] [stdout] 187 | pub struct Block { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 188 | pub stmts: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Block` 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 `name`, `mutable`, `typ`, and `expr` are never read [INFO] [stdout] --> src/parser.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 193 | Let { [INFO] [stdout] | --- fields in this variant [INFO] [stdout] 194 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 195 | mutable: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 196 | typ: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 197 | expr: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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/parser.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | Return(Option), [INFO] [stdout] | ------ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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] 200 - Return(Option), [INFO] [stdout] 200 + Return(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `cond`, `then_block`, and `else_block` are never read [INFO] [stdout] --> src/parser.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 203 | If { [INFO] [stdout] | -- fields in this variant [INFO] [stdout] 204 | cond: Expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 205 | then_block: Block, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 206 | else_block: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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 `cond` and `body` are never read [INFO] [stdout] --> src/parser.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 208 | While { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 209 | cond: Expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 210 | body: Block, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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 `pat`, `iter`, and `body` are never read [INFO] [stdout] --> src/parser.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 212 | For { [INFO] [stdout] | --- fields in this variant [INFO] [stdout] 213 | pat: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 214 | iter: Expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 215 | body: Block, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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 `Continue` and `Break` are never constructed [INFO] [stdout] --> src/parser.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 192 | pub enum Stmt { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 201 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 202 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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/parser.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | Literal(Literal), [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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] 222 - Literal(Literal), [INFO] [stdout] 222 + Literal(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:223:11 [INFO] [stdout] | [INFO] [stdout] 223 | Ident(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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] 223 - Ident(String), [INFO] [stdout] 223 + Ident(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `left`, `op`, and `right` are never read [INFO] [stdout] --> src/parser.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 224 | Binary { [INFO] [stdout] | ------ fields in this variant [INFO] [stdout] 225 | left: Box, [INFO] [stdout] | ^^^^ [INFO] [stdout] 226 | op: String, [INFO] [stdout] | ^^ [INFO] [stdout] 227 | right: Box, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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 `op` and `rhs` are never read [INFO] [stdout] --> src/parser.rs:230:9 [INFO] [stdout] | [INFO] [stdout] 229 | Unary { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 230 | op: String, [INFO] [stdout] | ^^ [INFO] [stdout] 231 | rhs: Box, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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 `callee` and `args` are never read [INFO] [stdout] --> src/parser.rs:234:9 [INFO] [stdout] | [INFO] [stdout] 233 | Call { [INFO] [stdout] | ---- fields in this variant [INFO] [stdout] 234 | callee: Box, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 235 | args: Vec, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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/parser.rs:237:14 [INFO] [stdout] | [INFO] [stdout] 237 | Grouping(Box), [INFO] [stdout] | -------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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] 237 - Grouping(Box), [INFO] [stdout] 237 + Grouping(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | Int(String), [INFO] [stdout] | --- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 243 - Int(String), [INFO] [stdout] 243 + Int(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:244:11 [INFO] [stdout] | [INFO] [stdout] 244 | Float(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 244 - Float(String), [INFO] [stdout] 244 + Float(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:245:12 [INFO] [stdout] | [INFO] [stdout] 245 | String(String), [INFO] [stdout] | ------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 245 - String(String), [INFO] [stdout] 245 + String(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:246:10 [INFO] [stdout] | [INFO] [stdout] 246 | Bool(bool), [INFO] [stdout] | ---- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 246 - Bool(bool), [INFO] [stdout] 246 + Bool(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Unit` is never constructed [INFO] [stdout] --> src/parser.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub enum Literal { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 247 | Unit { v: String, u: String }, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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 `generics`, `nullable`, and `pointer_type` are never read [INFO] [stdout] --> src/parser.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 251 | pub struct TypeRef { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 252 | pub name: String, // ชื่อ type หลัก เช่น "Box", "Option", "Result" [INFO] [stdout] 253 | pub generics: Vec, // พารามิเตอร์ generic เช่น [T], [K, V], [String, Int] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 254 | pub nullable: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 255 | pub pointer_type: Option, // อนาคตอาจขยาย: array, slice, reference, etc. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TypeRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.85s [INFO] running `Command { std: "docker" "inspect" "5f0d859140d239e2426cf532edf796abf366eaef4faa513fd5729c0293e58ef8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5f0d859140d239e2426cf532edf796abf366eaef4faa513fd5729c0293e58ef8", kill_on_drop: false }` [INFO] [stdout] 5f0d859140d239e2426cf532edf796abf366eaef4faa513fd5729c0293e58ef8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2ab81bde3e210c36e74bea1e4c658e0ac595b7422677d86473603d8671d02665 [INFO] running `Command { std: "docker" "start" "-a" "2ab81bde3e210c36e74bea1e4c658e0ac595b7422677d86473603d8671d02665", kill_on_drop: false }` [INFO] [stderr] Compiling Noisia v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/parser.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | idx, [INFO] [stdout] | ^^^ help: try ignoring the field: `idx: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/parser.rs:419:43 [INFO] [stdout] | [INFO] [stdout] 419 | if let Stmt::Expr(expr) = stmt { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `name` is never read [INFO] [stdout] --> src/parser.rs:1015:17 [INFO] [stdout] | [INFO] [stdout] 1015 | let mut name = String::new(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EOF` is never constructed [INFO] [stdout] --> src/parser.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum ParseError { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 14 | EOF { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Trait`, `Impl`, and `Class` are never constructed [INFO] [stdout] --> src/parser.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub enum Item { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 55 | Trait(TraitDecl), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | Impl(ImplDecl), [INFO] [stdout] | ^^^^ [INFO] [stdout] 57 | Class(ClassDecl), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Item` 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 `path` is never read [INFO] [stdout] --> src/parser.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct ModuleDecl { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 63 | pub path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ModuleDecl` 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 `path` and `symbols` are never read [INFO] [stdout] --> src/parser.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct ImportDecl { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 68 | pub path: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 69 | pub symbols: Option>, // `import A::{x,y}` or `import A::B` [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImportDecl` 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 fields are never read [INFO] [stdout] --> src/parser.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct FunctionDecl { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 74 | pub attributes: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 75 | pub visibility: Visibility, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 76 | pub modifiers: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 77 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 78 | pub is_async: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 79 | pub generics: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 80 | pub params: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 81 | pub ret_type: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 82 | pub effects: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 83 | pub where_clauses: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 84 | pub body: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionDecl` 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 `name` and `constraints` are never read [INFO] [stdout] --> src/parser.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct GenericParam { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 89 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 90 | pub constraints: Vec, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GenericParam` 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/parser.rs:95:16 [INFO] [stdout] | [INFO] [stdout] 95 | TraitBound(String), [INFO] [stdout] | ---------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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] 95 - TraitBound(String), [INFO] [stdout] 95 + TraitBound(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:96:19 [INFO] [stdout] | [INFO] [stdout] 96 | LifetimeBound(String), [INFO] [stdout] | ------------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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] 96 - LifetimeBound(String), [INFO] [stdout] 96 + LifetimeBound(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/parser.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | TypeEq(String, String), [INFO] [stdout] | ------ ^^^^^^ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 97 - TypeEq(String, String), [INFO] [stdout] 97 + TypeEq((), ()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:98:15 [INFO] [stdout] | [INFO] [stdout] 98 | SubtypeOf(String), [INFO] [stdout] | --------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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] 98 - SubtypeOf(String), [INFO] [stdout] 98 + SubtypeOf(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SupertypeOf` is never constructed [INFO] [stdout] --> src/parser.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 94 | pub enum TypeConstraint { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 99 | SupertypeOf(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TypeConstraint` 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 `param_name` and `constraints` are never read [INFO] [stdout] --> src/parser.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 103 | pub struct WhereClause { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 104 | pub param_name: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 105 | pub constraints: Vec, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WhereClause` 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 `name` and `params` are never read [INFO] [stdout] --> src/parser.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct Effect { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 110 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 111 | pub params: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Effect` 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 `Protected`, `Internal`, and `Package` are never constructed [INFO] [stdout] --> src/parser.rs:118:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub enum Visibility { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 118 | Protected, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 119 | Internal, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 120 | Package, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Visibility` 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 `name`, `typ`, and `default` are never read [INFO] [stdout] --> src/parser.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 131 | pub struct Param { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 132 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 133 | pub typ: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 134 | pub default: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Param` 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 `name` and `fields` are never read [INFO] [stdout] --> src/parser.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 138 | pub struct StructDecl { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 139 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 140 | // simple fields (name, type) [INFO] [stdout] 141 | pub fields: Vec<(String, TypeRef)>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `StructDecl` 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 `name` and `variants` are never read [INFO] [stdout] --> src/parser.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct EnumDecl { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 146 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 147 | pub variants: Vec, // simplified [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnumDecl` 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 `name` and `methods` are never read [INFO] [stdout] --> src/parser.rs:152:9 [INFO] [stdout] | [INFO] [stdout] 151 | pub struct TraitDecl { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 152 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 153 | pub methods: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TraitDecl` 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 `trait_name`, `target`, and `methods` are never read [INFO] [stdout] --> src/parser.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 157 | pub struct ImplDecl { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 158 | pub trait_name: Option, // None = inherent impl, Some("Trait") = trait impl [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 159 | pub target: TypeRef, // type name เช่น "Point" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 160 | pub methods: Vec, // body ของ impl [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImplDecl` 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 `name`, `fields`, `constructors`, and `methods` are never read [INFO] [stdout] --> src/parser.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 164 | pub struct ClassDecl { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 165 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 166 | pub fields: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 167 | pub constructors: Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 168 | pub methods: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ClassDecl` 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 `vis`, `name`, `typ`, and `value` are never read [INFO] [stdout] --> src/parser.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 172 | pub struct ClassFieldDecl { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 173 | pub vis: Visibility, [INFO] [stdout] | ^^^ [INFO] [stdout] 174 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 175 | pub typ: TypeRef, [INFO] [stdout] | ^^^ [INFO] [stdout] 176 | pub value: Option, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ClassFieldDecl` 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 `name`, `params`, and `body` are never read [INFO] [stdout] --> src/parser.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct ConstructorDecl { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 181 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 182 | pub params: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 183 | pub body: Block, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConstructorDecl` 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 `stmts` is never read [INFO] [stdout] --> src/parser.rs:188:9 [INFO] [stdout] | [INFO] [stdout] 187 | pub struct Block { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 188 | pub stmts: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Block` 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 `name`, `mutable`, `typ`, and `expr` are never read [INFO] [stdout] --> src/parser.rs:194:9 [INFO] [stdout] | [INFO] [stdout] 193 | Let { [INFO] [stdout] | --- fields in this variant [INFO] [stdout] 194 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 195 | mutable: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 196 | typ: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] 197 | expr: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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/parser.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | Return(Option), [INFO] [stdout] | ------ ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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] 200 - Return(Option), [INFO] [stdout] 200 + Return(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `cond`, `then_block`, and `else_block` are never read [INFO] [stdout] --> src/parser.rs:204:9 [INFO] [stdout] | [INFO] [stdout] 203 | If { [INFO] [stdout] | -- fields in this variant [INFO] [stdout] 204 | cond: Expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 205 | then_block: Block, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 206 | else_block: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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 `cond` and `body` are never read [INFO] [stdout] --> src/parser.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 208 | While { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 209 | cond: Expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 210 | body: Block, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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 `pat`, `iter`, and `body` are never read [INFO] [stdout] --> src/parser.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 212 | For { [INFO] [stdout] | --- fields in this variant [INFO] [stdout] 213 | pat: String, [INFO] [stdout] | ^^^ [INFO] [stdout] 214 | iter: Expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] 215 | body: Block, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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 `Continue` and `Break` are never constructed [INFO] [stdout] --> src/parser.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 192 | pub enum Stmt { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 201 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 202 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stmt` 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/parser.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | Literal(Literal), [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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] 222 - Literal(Literal), [INFO] [stdout] 222 + Literal(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:223:11 [INFO] [stdout] | [INFO] [stdout] 223 | Ident(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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] 223 - Ident(String), [INFO] [stdout] 223 + Ident(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `left`, `op`, and `right` are never read [INFO] [stdout] --> src/parser.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 224 | Binary { [INFO] [stdout] | ------ fields in this variant [INFO] [stdout] 225 | left: Box, [INFO] [stdout] | ^^^^ [INFO] [stdout] 226 | op: String, [INFO] [stdout] | ^^ [INFO] [stdout] 227 | right: Box, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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 `op` and `rhs` are never read [INFO] [stdout] --> src/parser.rs:230:9 [INFO] [stdout] | [INFO] [stdout] 229 | Unary { [INFO] [stdout] | ----- fields in this variant [INFO] [stdout] 230 | op: String, [INFO] [stdout] | ^^ [INFO] [stdout] 231 | rhs: Box, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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 `callee` and `args` are never read [INFO] [stdout] --> src/parser.rs:234:9 [INFO] [stdout] | [INFO] [stdout] 233 | Call { [INFO] [stdout] | ---- fields in this variant [INFO] [stdout] 234 | callee: Box, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 235 | args: Vec, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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/parser.rs:237:14 [INFO] [stdout] | [INFO] [stdout] 237 | Grouping(Box), [INFO] [stdout] | -------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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] 237 - Grouping(Box), [INFO] [stdout] 237 + Grouping(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | Int(String), [INFO] [stdout] | --- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 243 - Int(String), [INFO] [stdout] 243 + Int(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:244:11 [INFO] [stdout] | [INFO] [stdout] 244 | Float(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 244 - Float(String), [INFO] [stdout] 244 + Float(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:245:12 [INFO] [stdout] | [INFO] [stdout] 245 | String(String), [INFO] [stdout] | ------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 245 - String(String), [INFO] [stdout] 245 + String(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser.rs:246:10 [INFO] [stdout] | [INFO] [stdout] 246 | Bool(bool), [INFO] [stdout] | ---- ^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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] 246 - Bool(bool), [INFO] [stdout] 246 + Bool(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Unit` is never constructed [INFO] [stdout] --> src/parser.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub enum Literal { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 247 | Unit { v: String, u: String }, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Literal` 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 `generics`, `nullable`, and `pointer_type` are never read [INFO] [stdout] --> src/parser.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 251 | pub struct TypeRef { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 252 | pub name: String, // ชื่อ type หลัก เช่น "Box", "Option", "Result" [INFO] [stdout] 253 | pub generics: Vec, // พารามิเตอร์ generic เช่น [T], [K, V], [String, Int] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 254 | pub nullable: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 255 | pub pointer_type: Option, // อนาคตอาจขยาย: array, slice, reference, etc. [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TypeRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.64s [INFO] running `Command { std: "docker" "inspect" "2ab81bde3e210c36e74bea1e4c658e0ac595b7422677d86473603d8671d02665", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2ab81bde3e210c36e74bea1e4c658e0ac595b7422677d86473603d8671d02665", kill_on_drop: false }` [INFO] [stdout] 2ab81bde3e210c36e74bea1e4c658e0ac595b7422677d86473603d8671d02665 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 27ae887eabb529d294afbaae0aa95eb16453143df17101d14f22ade4214e3f9e [INFO] running `Command { std: "docker" "start" "-a" "27ae887eabb529d294afbaae0aa95eb16453143df17101d14f22ade4214e3f9e", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `idx` [INFO] [stderr] --> src/parser.rs:26:17 [INFO] [stderr] | [INFO] [stderr] 26 | idx, [INFO] [stderr] | ^^^ help: try ignoring the field: `idx: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `expr` [INFO] [stderr] --> src/parser.rs:419:43 [INFO] [stderr] | [INFO] [stderr] 419 | if let Stmt::Expr(expr) = stmt { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `name` is never read [INFO] [stderr] --> src/parser.rs:1015:17 [INFO] [stderr] | [INFO] [stderr] 1015 | let mut name = String::new(); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variant `EOF` is never constructed [INFO] [stderr] --> src/parser.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 8 | pub enum ParseError { [INFO] [stderr] | ---------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 14 | EOF { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variants `Trait`, `Impl`, and `Class` are never constructed [INFO] [stderr] --> src/parser.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 49 | pub enum Item { [INFO] [stderr] | ---- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 55 | Trait(TraitDecl), [INFO] [stderr] | ^^^^^ [INFO] [stderr] 56 | Impl(ImplDecl), [INFO] [stderr] | ^^^^ [INFO] [stderr] 57 | Class(ClassDecl), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Item` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `path` is never read [INFO] [stderr] --> src/parser.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 62 | pub struct ModuleDecl { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] 63 | pub path: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ModuleDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `path` and `symbols` are never read [INFO] [stderr] --> src/parser.rs:68:9 [INFO] [stderr] | [INFO] [stderr] 67 | pub struct ImportDecl { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 68 | pub path: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 69 | pub symbols: Option>, // `import A::{x,y}` or `import A::B` [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ImportDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/parser.rs:74:9 [INFO] [stderr] | [INFO] [stderr] 73 | pub struct FunctionDecl { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 74 | pub attributes: Vec, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 75 | pub visibility: Visibility, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 76 | pub modifiers: Vec, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 77 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 78 | pub is_async: bool, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 79 | pub generics: Vec, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 80 | pub params: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 81 | pub ret_type: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 82 | pub effects: Vec, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 83 | pub where_clauses: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 84 | pub body: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FunctionDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `constraints` are never read [INFO] [stderr] --> src/parser.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 88 | pub struct GenericParam { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 89 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 90 | pub constraints: Vec, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GenericParam` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:95:16 [INFO] [stderr] | [INFO] [stderr] 95 | TraitBound(String), [INFO] [stderr] | ---------- ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 95 - TraitBound(String), [INFO] [stderr] 95 + TraitBound(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:96:19 [INFO] [stderr] | [INFO] [stderr] 96 | LifetimeBound(String), [INFO] [stderr] | ------------- ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 96 - LifetimeBound(String), [INFO] [stderr] 96 + LifetimeBound(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: fields `0` and `1` are never read [INFO] [stderr] --> src/parser.rs:97:12 [INFO] [stderr] | [INFO] [stderr] 97 | TypeEq(String, String), [INFO] [stderr] | ------ ^^^^^^ ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | fields in this variant [INFO] [stderr] | [INFO] [stderr] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stderr] | [INFO] [stderr] 97 - TypeEq(String, String), [INFO] [stderr] 97 + TypeEq((), ()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:98:15 [INFO] [stderr] | [INFO] [stderr] 98 | SubtypeOf(String), [INFO] [stderr] | --------- ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 98 - SubtypeOf(String), [INFO] [stderr] 98 + SubtypeOf(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variant `SupertypeOf` is never constructed [INFO] [stderr] --> src/parser.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 94 | pub enum TypeConstraint { [INFO] [stderr] | -------------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 99 | SupertypeOf(String), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TypeConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `param_name` and `constraints` are never read [INFO] [stderr] --> src/parser.rs:104:9 [INFO] [stderr] | [INFO] [stderr] 103 | pub struct WhereClause { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 104 | pub param_name: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 105 | pub constraints: Vec, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `WhereClause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `params` are never read [INFO] [stderr] --> src/parser.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 109 | pub struct Effect { [INFO] [stderr] | ------ fields in this struct [INFO] [stderr] 110 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 111 | pub params: Option>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Effect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `Protected`, `Internal`, and `Package` are never constructed [INFO] [stderr] --> src/parser.rs:118:5 [INFO] [stderr] | [INFO] [stderr] 115 | pub enum Visibility { [INFO] [stderr] | ---------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 118 | Protected, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 119 | Internal, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 120 | Package, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Visibility` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `typ`, and `default` are never read [INFO] [stderr] --> src/parser.rs:132:9 [INFO] [stderr] | [INFO] [stderr] 131 | pub struct Param { [INFO] [stderr] | ----- fields in this struct [INFO] [stderr] 132 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 133 | pub typ: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] 134 | pub default: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Param` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `fields` are never read [INFO] [stderr] --> src/parser.rs:139:9 [INFO] [stderr] | [INFO] [stderr] 138 | pub struct StructDecl { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 139 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 140 | // simple fields (name, type) [INFO] [stderr] 141 | pub fields: Vec<(String, TypeRef)>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `StructDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `variants` are never read [INFO] [stderr] --> src/parser.rs:146:9 [INFO] [stderr] | [INFO] [stderr] 145 | pub struct EnumDecl { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 146 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 147 | pub variants: Vec, // simplified [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `EnumDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `methods` are never read [INFO] [stderr] --> src/parser.rs:152:9 [INFO] [stderr] | [INFO] [stderr] 151 | pub struct TraitDecl { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 152 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 153 | pub methods: Vec, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TraitDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `trait_name`, `target`, and `methods` are never read [INFO] [stderr] --> src/parser.rs:158:9 [INFO] [stderr] | [INFO] [stderr] 157 | pub struct ImplDecl { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 158 | pub trait_name: Option, // None = inherent impl, Some("Trait") = trait impl [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 159 | pub target: TypeRef, // type name เช่น "Point" [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 160 | pub methods: Vec, // body ของ impl [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ImplDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `fields`, `constructors`, and `methods` are never read [INFO] [stderr] --> src/parser.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 164 | pub struct ClassDecl { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 165 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 166 | pub fields: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 167 | pub constructors: Vec, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 168 | pub methods: Vec, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ClassDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `vis`, `name`, `typ`, and `value` are never read [INFO] [stderr] --> src/parser.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 172 | pub struct ClassFieldDecl { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] 173 | pub vis: Visibility, [INFO] [stderr] | ^^^ [INFO] [stderr] 174 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 175 | pub typ: TypeRef, [INFO] [stderr] | ^^^ [INFO] [stderr] 176 | pub value: Option, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ClassFieldDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `params`, and `body` are never read [INFO] [stderr] --> src/parser.rs:181:9 [INFO] [stderr] | [INFO] [stderr] 180 | pub struct ConstructorDecl { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] 181 | pub name: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] 182 | pub params: Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 183 | pub body: Block, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ConstructorDecl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `stmts` is never read [INFO] [stderr] --> src/parser.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 187 | pub struct Block { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 188 | pub stmts: Vec, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Block` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `mutable`, `typ`, and `expr` are never read [INFO] [stderr] --> src/parser.rs:194:9 [INFO] [stderr] | [INFO] [stderr] 193 | Let { [INFO] [stderr] | --- fields in this variant [INFO] [stderr] 194 | name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 195 | mutable: bool, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 196 | typ: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] 197 | expr: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:200:12 [INFO] [stderr] | [INFO] [stderr] 200 | Return(Option), [INFO] [stderr] | ------ ^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 200 - Return(Option), [INFO] [stderr] 200 + Return(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: fields `cond`, `then_block`, and `else_block` are never read [INFO] [stderr] --> src/parser.rs:204:9 [INFO] [stderr] | [INFO] [stderr] 203 | If { [INFO] [stderr] | -- fields in this variant [INFO] [stderr] 204 | cond: Expr, [INFO] [stderr] | ^^^^ [INFO] [stderr] 205 | then_block: Block, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 206 | else_block: Option, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `cond` and `body` are never read [INFO] [stderr] --> src/parser.rs:209:9 [INFO] [stderr] | [INFO] [stderr] 208 | While { [INFO] [stderr] | ----- fields in this variant [INFO] [stderr] 209 | cond: Expr, [INFO] [stderr] | ^^^^ [INFO] [stderr] 210 | body: Block, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `pat`, `iter`, and `body` are never read [INFO] [stderr] --> src/parser.rs:213:9 [INFO] [stderr] | [INFO] [stderr] 212 | For { [INFO] [stderr] | --- fields in this variant [INFO] [stderr] 213 | pat: String, [INFO] [stderr] | ^^^ [INFO] [stderr] 214 | iter: Expr, [INFO] [stderr] | ^^^^ [INFO] [stderr] 215 | body: Block, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `Continue` and `Break` are never constructed [INFO] [stderr] --> src/parser.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 192 | pub enum Stmt { [INFO] [stderr] | ---- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 201 | Continue, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 202 | Break, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Stmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:222:13 [INFO] [stderr] | [INFO] [stderr] 222 | Literal(Literal), [INFO] [stderr] | ------- ^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 222 - Literal(Literal), [INFO] [stderr] 222 + Literal(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:223:11 [INFO] [stderr] | [INFO] [stderr] 223 | Ident(String), [INFO] [stderr] | ----- ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 223 - Ident(String), [INFO] [stderr] 223 + Ident(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: fields `left`, `op`, and `right` are never read [INFO] [stderr] --> src/parser.rs:225:9 [INFO] [stderr] | [INFO] [stderr] 224 | Binary { [INFO] [stderr] | ------ fields in this variant [INFO] [stderr] 225 | left: Box, [INFO] [stderr] | ^^^^ [INFO] [stderr] 226 | op: String, [INFO] [stderr] | ^^ [INFO] [stderr] 227 | right: Box, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `op` and `rhs` are never read [INFO] [stderr] --> src/parser.rs:230:9 [INFO] [stderr] | [INFO] [stderr] 229 | Unary { [INFO] [stderr] | ----- fields in this variant [INFO] [stderr] 230 | op: String, [INFO] [stderr] | ^^ [INFO] [stderr] 231 | rhs: Box, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `callee` and `args` are never read [INFO] [stderr] --> src/parser.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 233 | Call { [INFO] [stderr] | ---- fields in this variant [INFO] [stderr] 234 | callee: Box, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 235 | args: Vec, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:237:14 [INFO] [stderr] | [INFO] [stderr] 237 | Grouping(Box), [INFO] [stderr] | -------- ^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 237 - Grouping(Box), [INFO] [stderr] 237 + Grouping(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:243:9 [INFO] [stderr] | [INFO] [stderr] 243 | Int(String), [INFO] [stderr] | --- ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 243 - Int(String), [INFO] [stderr] 243 + Int(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:244:11 [INFO] [stderr] | [INFO] [stderr] 244 | Float(String), [INFO] [stderr] | ----- ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 244 - Float(String), [INFO] [stderr] 244 + Float(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:245:12 [INFO] [stderr] | [INFO] [stderr] 245 | String(String), [INFO] [stderr] | ------ ^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 245 - String(String), [INFO] [stderr] 245 + String(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/parser.rs:246:10 [INFO] [stderr] | [INFO] [stderr] 246 | Bool(bool), [INFO] [stderr] | ---- ^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 246 - Bool(bool), [INFO] [stderr] 246 + Bool(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variant `Unit` is never constructed [INFO] [stderr] --> src/parser.rs:247:5 [INFO] [stderr] | [INFO] [stderr] 242 | pub enum Literal { [INFO] [stderr] | ------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 247 | Unit { v: String, u: String }, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `generics`, `nullable`, and `pointer_type` are never read [INFO] [stderr] --> src/parser.rs:253:9 [INFO] [stderr] | [INFO] [stderr] 251 | pub struct TypeRef { [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] 252 | pub name: String, // ชื่อ type หลัก เช่น "Box", "Option", "Result" [INFO] [stderr] 253 | pub generics: Vec, // พารามิเตอร์ generic เช่น [T], [K, V], [String, Int] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 254 | pub nullable: bool, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 255 | pub pointer_type: Option, // อนาคตอาจขยาย: array, slice, reference, etc. [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TypeRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: `Noisia` (bin "Noisia" test) generated 44 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/Noisia-12539eda597277fd) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "27ae887eabb529d294afbaae0aa95eb16453143df17101d14f22ade4214e3f9e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "27ae887eabb529d294afbaae0aa95eb16453143df17101d14f22ade4214e3f9e", kill_on_drop: false }` [INFO] [stdout] 27ae887eabb529d294afbaae0aa95eb16453143df17101d14f22ade4214e3f9e