[INFO] cloning repository https://github.com/jmikkola/ikrs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jmikkola/ikrs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjmikkola%2Fikrs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjmikkola%2Fikrs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2ad02e377a76a1096598143ae60ae3347cceb368
[INFO] testing jmikkola/ikrs against 1.90.0 for beta-1.91-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjmikkola%2Fikrs" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jmikkola/ikrs
[INFO] finished tweaking git repo https://github.com/jmikkola/ikrs
[INFO] tweaked toml for git repo https://github.com/jmikkola/ikrs written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jmikkola/ikrs on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jmikkola/ikrs 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" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded argparse v0.2.2
[INFO] [stderr]   Downloaded tempdir v0.3.7
[INFO] [stderr]   Downloaded itertools v0.10.1
[INFO] [stderr]   Downloaded regex v1.4.5
[INFO] [stderr]   Downloaded regex-syntax v0.6.23
[INFO] [stderr]   Downloaded libc v0.2.93
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf9b22bee791cb3053d3d84c2a441ae7a2bb07c8816efed16dc187f0aeac2b79
[INFO] running `Command { std: "docker" "start" "-a" "bf9b22bee791cb3053d3d84c2a441ae7a2bb07c8816efed16dc187f0aeac2b79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf9b22bee791cb3053d3d84c2a441ae7a2bb07c8816efed16dc187f0aeac2b79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf9b22bee791cb3053d3d84c2a441ae7a2bb07c8816efed16dc187f0aeac2b79", kill_on_drop: false }`
[INFO] [stdout] bf9b22bee791cb3053d3d84c2a441ae7a2bb07c8816efed16dc187f0aeac2b79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d91422d96147ac49cc7501626d6c2925ea8504336a5bfd95033631af8da5a3ff
[INFO] running `Command { std: "docker" "start" "-a" "d91422d96147ac49cc7501626d6c2925ea8504336a5bfd95033631af8da5a3ff", kill_on_drop: false }`
[INFO] [stderr]    Compiling anyhow v1.0.41
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling argparse v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.1
[INFO] [stderr]    Compiling walkdir v2.3.2
[INFO] [stderr]    Compiling ikrs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:224:16
[INFO] [stdout]     |
[INFO] [stdout] 224 |     ReturnExpr(ExpressionRef),
[INFO] [stdout]     |     ---------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 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] 224 -     ReturnExpr(ExpressionRef),
[INFO] [stdout] 224 +     ReturnExpr(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:225:14
[INFO] [stdout]     |
[INFO] [stdout] 225 |     ExprStmt(ExpressionRef),
[INFO] [stdout]     |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 225 -     ExprStmt(ExpressionRef),
[INFO] [stdout] 225 +     ExprStmt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 |     LetStmt(Box<LetStatement>),
[INFO] [stdout]     |     ------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 226 -     LetStmt(Box<LetStatement>),
[INFO] [stdout] 226 +     LetStmt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/parser/ast.rs:227:16
[INFO] [stdout]     |
[INFO] [stdout] 227 |     AssignStmt(ExpressionRef, ExpressionRef),
[INFO] [stdout]     |     ---------- ^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 227 -     AssignStmt(ExpressionRef, ExpressionRef),
[INFO] [stdout] 227 +     AssignStmt((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:228:11
[INFO] [stdout]     |
[INFO] [stdout] 228 |     Block(Vec<StatementRef>),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 228 -     Block(Vec<StatementRef>),
[INFO] [stdout] 228 +     Block(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:230:12
[INFO] [stdout]     |
[INFO] [stdout] 230 |     IfStmt(Box<IfStatement>),
[INFO] [stdout]     |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 230 -     IfStmt(Box<IfStatement>),
[INFO] [stdout] 230 +     IfStmt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:231:15
[INFO] [stdout]     |
[INFO] [stdout] 231 |     WhileStmt(Box<WhileStatement>),
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 231 -     WhileStmt(Box<WhileStatement>),
[INFO] [stdout] 231 +     WhileStmt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 232 |     ForStmt(Box<ForStatement>),
[INFO] [stdout]     |     ------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 232 -     ForStmt(Box<ForStatement>),
[INFO] [stdout] 232 +     ForStmt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:233:15
[INFO] [stdout]     |
[INFO] [stdout] 233 |     MatchStmt(Box<MatchStatement>),
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 233 -     MatchStmt(Box<MatchStatement>),
[INFO] [stdout] 233 +     MatchStmt(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `super_classes` is never read
[INFO] [stdout]    --> src/parser/ast.rs:557:9
[INFO] [stdout]     |
[INFO] [stdout] 556 | pub struct ClassType {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 557 |     pub super_classes: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClassType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `test`, `tbody`, and `ebody` are never read
[INFO] [stdout]    --> src/parser/ast.rs:621:9
[INFO] [stdout]     |
[INFO] [stdout] 620 | pub struct IfStatement {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 621 |     pub test: ExpressionRef,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 622 |     pub tbody: StatementRef,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 623 |     pub ebody: Option<StatementRef>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IfStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `test` and `body` are never read
[INFO] [stdout]    --> src/parser/ast.rs:643:9
[INFO] [stdout]     |
[INFO] [stdout] 642 | pub struct WhileStatement {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 643 |     pub test: ExpressionRef,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 644 |     pub body: StatementRef,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WhileStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `variable`, `iterable`, and `body` are never read
[INFO] [stdout]    --> src/parser/ast.rs:660:9
[INFO] [stdout]     |
[INFO] [stdout] 659 | pub struct ForStatement {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 660 |     pub variable: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 661 |     pub iterable: ExpressionRef,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 662 |     pub body: StatementRef,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ForStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `matched` and `matchers` are never read
[INFO] [stdout]    --> src/parser/ast.rs:678:9
[INFO] [stdout]     |
[INFO] [stdout] 677 | pub struct MatchStatement {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 678 |     pub matched: ExpressionRef,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 679 |     pub matchers: Vec<Matcher>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MatchStatement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pattern` and `body` are never read
[INFO] [stdout]    --> src/parser/ast.rs:697:9
[INFO] [stdout]     |
[INFO] [stdout] 696 | pub struct Matcher {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 697 |     pub pattern: Pattern,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 698 |     pub body: StatementRef,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Matcher` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:718:10
[INFO] [stdout]     |
[INFO] [stdout] 718 |     Name(String),
[INFO] [stdout]     |     ---- ^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Pattern` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 718 -     Name(String),
[INFO] [stdout] 718 +     Name(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/parser/ast.rs:719:11
[INFO] [stdout]     |
[INFO] [stdout] 719 |     Named(String, Box<Pattern>),
[INFO] [stdout]     |     ----- ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Pattern` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]     |
[INFO] [stdout] 719 -     Named(String, Box<Pattern>),
[INFO] [stdout] 719 +     Named((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:720:13
[INFO] [stdout]     |
[INFO] [stdout] 720 |     Literal(Literal),
[INFO] [stdout]     |     ------- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Pattern` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 720 -     Literal(Literal),
[INFO] [stdout] 720 +     Literal(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:721:15
[INFO] [stdout]     |
[INFO] [stdout] 721 |     Structure(Box<StructPattern>),
[INFO] [stdout]     |     --------- ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Pattern` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 721 -     Structure(Box<StructPattern>),
[INFO] [stdout] 721 +     Structure(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/parser/ast.rs:722:11
[INFO] [stdout]     |
[INFO] [stdout] 722 |     Tuple(Vec<Pattern>),
[INFO] [stdout]     |     ----- ^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Pattern` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 722 -     Tuple(Vec<Pattern>),
[INFO] [stdout] 722 +     Tuple(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `struct_name` and `field_patterns` are never read
[INFO] [stdout]    --> src/parser/ast.rs:758:9
[INFO] [stdout]     |
[INFO] [stdout] 757 | pub struct StructPattern {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 758 |     pub struct_name: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 759 |     pub field_patterns: Vec<Pattern>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructPattern` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `on_type`, `class`, `constraints`, and `methods` are never read
[INFO] [stdout]    --> src/parser/ast.rs:776:9
[INFO] [stdout]     |
[INFO] [stdout] 775 | pub struct InstanceDecl {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 776 |     pub on_type: TypeRef,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 777 |     pub class: String,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 778 |     pub constraints: Vec<Constraint>,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 779 |     pub methods: Vec<DeclarationRef>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InstanceDecl` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `arg_names`, `fn_type`, and `body` are never read
[INFO] [stdout]    --> src/parser/ast.rs:802:9
[INFO] [stdout]     |
[INFO] [stdout] 800 | pub struct FunctionDecl {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 801 |     pub name: String,
[INFO] [stdout] 802 |     pub arg_names: Vec<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 803 |     pub fn_type: Option<TypeRef>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 804 |     pub body: StatementRef,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FunctionDecl` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `comments` is never read
[INFO] [stdout]  --> src/parser/tokenize.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Tokens {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 8 |     pub tokens: Vec<(Token, Location)>,
[INFO] [stdout] 9 |     pub comments: Vec<(Comment, Location)>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Tokens` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.65s
[INFO] running `Command { std: "docker" "inspect" "d91422d96147ac49cc7501626d6c2925ea8504336a5bfd95033631af8da5a3ff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d91422d96147ac49cc7501626d6c2925ea8504336a5bfd95033631af8da5a3ff", kill_on_drop: false }`
[INFO] [stdout] d91422d96147ac49cc7501626d6c2925ea8504336a5bfd95033631af8da5a3ff
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c97560dd7c70fea57c2829d41e5104d8a1af61121bc914b86a909637dd2e14d0
[INFO] running `Command { std: "docker" "start" "-a" "c97560dd7c70fea57c2829d41e5104d8a1af61121bc914b86a909637dd2e14d0", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.93
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling regex-syntax v0.6.23
[INFO] [stderr]    Compiling aho-corasick v0.7.15
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling regex v1.4.5
[INFO] [stderr]    Compiling ikrs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 8.54s
[INFO] running `Command { std: "docker" "inspect" "c97560dd7c70fea57c2829d41e5104d8a1af61121bc914b86a909637dd2e14d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c97560dd7c70fea57c2829d41e5104d8a1af61121bc914b86a909637dd2e14d0", kill_on_drop: false }`
[INFO] [stdout] c97560dd7c70fea57c2829d41e5104d8a1af61121bc914b86a909637dd2e14d0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 57de56a6e30a5764b5a36d0a3bdcb420a6506decb09f0561e3dc00100c984141
[INFO] running `Command { std: "docker" "start" "-a" "57de56a6e30a5764b5a36d0a3bdcb420a6506decb09f0561e3dc00100c984141", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ikrs-09e6d2b0658ca350)
[INFO] [stdout] running 123 tests
[INFO] [stdout] test compiler::first_pass::test::test_class_with_multiple_methods ... ok
[INFO] [stdout] test compiler::first_pass::test::test_alias_to_undefined_type ... ok
[INFO] [stdout] test compiler::first_pass::test::test_cannot_redefined_builtin_type ... ok
[INFO] [stdout] test compiler::first_pass::test::test_class_with_duplicate_method_names ... ok
[INFO] [stdout] test compiler::first_pass::test::test_struct_involving_undefined_type ... ok
[INFO] [stdout] test compiler::first_pass::test::test_two_files_with_conflict_between_import_and_declaration ... ok
[INFO] [stdout] test compiler::first_pass::test::test_class_referencing_undefined_type ... ok
[INFO] [stdout] test compiler::first_pass::test::test_duplicate_package ... ok
[INFO] [stdout] test compiler::first_pass::test::test_duplicate_imports ... ok
[INFO] [stdout] test compiler::first_pass::test::test_class_referencing_type_defined_later ... ok
[INFO] [stdout] test compiler::first_pass::test::test_package_after_other_statements ... ok
[INFO] [stdout] test compiler::first_pass::test::test_valid_reference_type_defined_in_module ... ok
[INFO] [stdout] test compiler::first_pass::test::test_two_files_with_conflicting_import ... ok
[INFO] [stdout] test compiler::test::test_get_package_path ... ok
[INFO] [stdout] test compiler::first_pass::test::test_valid_imports ... ok
[INFO] [stdout] test compiler::first_pass::test::test_struct_with_undefined_type ... ok
[INFO] [stdout] test compiler::test::test_fails_on_import_cycle ... ok
[INFO] [stdout] test compiler::first_pass::test::test_duplicate_type_declaration ... ok
[INFO] [stdout] test compiler::test::test_fails_with_duplicate_declaration ... ok
[INFO] [stdout] test compiler::first_pass::test::test_two_imports_using_the_same_name ... ok
[INFO] [stdout] test compiler::first_pass::test::test_enum_referencing_undefined_type ... ok
[INFO] [stdout] test compiler::first_pass::test::test_import_after_other_declarations ... ok
[INFO] [stdout] test compiler::test::test_building_multi_module_project ... ok
[INFO] [stdout] test compiler::first_pass::test::test_valid_self_referential_struct ... ok
[INFO] [stdout] test compiler::first_pass::test::test_valid_struct_definition ... ok
[INFO] [stdout] test compiler::test::test_grouping_files ... ok
[INFO] [stdout] test inference::test::test_merging_subsitutions ... ok
[INFO] [stdout] test parser::location::test::test_ordering ... ok
[INFO] [stdout] test parser::location::test::test_render_selection_word ... ok
[INFO] [stdout] test parser::parser::test::test_assignment ... ok
[INFO] [stdout] test parser::parser::test::test_binary_ops ... ok
[INFO] [stdout] test parser::parser::test::test_class_definition_with_method_constraint ... ok
[INFO] [stdout] test compiler::first_pass::test::test_two_files_with_same_import ... ok
[INFO] [stdout] test compiler::first_pass::test::test_valid_type_declaration ... ok
[INFO] [stdout] test compiler::test::test_building_single_main_file ... ok
[INFO] [stdout] test compiler::first_pass::test::test_valid_package ... ok
[INFO] [stdout] test inference::test::test_composing_substitutions ... ok
[INFO] [stdout] test parser::parser::test::test_class_extends ... ok
[INFO] [stdout] test parser::parser::test::test_class_definition ... ok
[INFO] [stdout] test inference::test::test_matching_types ... ok
[INFO] [stdout] test parser::parser::test::test_else_if_else ... ok
[INFO] [stdout] test parser::parser::test::test_correct_line_for_smart_error ... ok
[INFO] [stdout] test parser::parser::test::test_enum_with_fields ... ok
[INFO] [stdout] test parser::parser::test::test_field_assignment ... ok
[INFO] [stdout] test parser::parser::test::test_expression_statements ... ok
[INFO] [stdout] test parser::parser::test::test_function_call_many_args ... ok
[INFO] [stdout] test parser::parser::test::test_else_if ... ok
[INFO] [stdout] test parser::parser::test::test_for ... ok
[INFO] [stdout] test parser::parser::test::test_function_with_contraint ... ok
[INFO] [stdout] test parser::parser::test::test_function_with_if ... ok
[INFO] [stdout] test parser::parser::test::test_function_call_one_arg ... ok
[INFO] [stdout] test parser::parser::test::test_function_call_trailing_comma ... ok
[INFO] [stdout] test parser::parser::test::test_function_decl ... ok
[INFO] [stdout] test parser::parser::test::test_function_implicit_void_return ... ok
[INFO] [stdout] test parser::parser::test::test_function_in_parens ... ok
[INFO] [stdout] test parser::parser::test::test_function_type ... ok
[INFO] [stdout] test parser::parser::test::test_function_type_with_constraints ... ok
[INFO] [stdout] test parser::parser::test::test_field_access ... ok
[INFO] [stdout] test parser::parser::test::test_function_with_args ... ok
[INFO] [stdout] test parser::parser::test::test_generic_struct_decl ... ok
[INFO] [stdout] test parser::parser::test::test_function_with_lambda ... ok
[INFO] [stdout] test parser::parser::test::test_function_with_lambda_and_more_statements ... ok
[INFO] [stdout] test parser::parser::test::test_function_with_type ... ok
[INFO] [stdout] test parser::parser::test::test_function_call_no_args ... ok
[INFO] [stdout] test parser::parser::test::test_if_else ... ok
[INFO] [stdout] test parser::parser::test::test_if_without_else ... ok
[INFO] [stdout] test parser::parser::test::test_instance_declaration ... ok
[INFO] [stdout] test parser::parser::test::test_instance_with_constraints ... ok
[INFO] [stdout] test parser::parser::test::test_multiple_unary_operators ... ok
[INFO] [stdout] test parser::parser::test::test_package_decl ... ok
[INFO] [stdout] test parser::parser::test::test_parens ... ok
[INFO] [stdout] test parser::parser::test::test_if_if_else ... ok
[INFO] [stdout] test parser::parser::test::test_if_with_statement_after ... ok
[INFO] [stdout] test parser::parser::test::test_if_with_two_statements ... ok
[INFO] [stdout] test parser::parser::test::test_import_decl ... ok
[INFO] [stdout] test parser::parser::test::test_int ... ok
[INFO] [stdout] test parser::parser::test::test_let_statement ... ok
[INFO] [stdout] test parser::parser::test::test_match ... ok
[INFO] [stdout] test parser::parser::test::test_mixing_binary_and_unary ... ok
[INFO] [stdout] test parser::parser::test::test_offset_assignment ... ok
[INFO] [stdout] test parser::parser::test::test_parses_file ... ok
[INFO] [stdout] test parser::parser::test::test_offset_access ... ok
[INFO] [stdout] test parser::parser::test::test_parses_statement_after_enum ... ok
[INFO] [stdout] test parser::parser::test::test_named_pattern ... ok
[INFO] [stdout] test parser::parser::test::test_nested_if_statements ... ok
[INFO] [stdout] test parser::parser::test::test_repeated_offset_access ... ok
[INFO] [stdout] test parser::parser::test::test_plain_return ... ok
[INFO] [stdout] test parser::parser::test::test_simple_patterns ... ok
[INFO] [stdout] test parser::parser::test::test_simple_type ... ok
[INFO] [stdout] test parser::parser::test::test_star_operators ... ok
[INFO] [stdout] test parser::parser::test::test_tuple_pattern ... ok
[INFO] [stdout] test parser::parser::test::test_type_alias_decl ... ok
[INFO] [stdout] test parser::parser::test::test_structure_literal ... ok
[INFO] [stdout] test parser::parser::test::test_type_with_generics ... ok
[INFO] [stdout] test parser::parser::test::test_unary_bang ... ok
[INFO] [stdout] test parser::parser::test::test_void_type ... ok
[INFO] [stdout] test parser::parser::test::test_variable ... ok
[INFO] [stdout] test parser::parser::test::test_while ... ok
[INFO] [stdout] test parser::parser::test::test_typed_let ... ok
[INFO] [stdout] test parser::tokenize::test::test_characters ... ok
[INFO] [stdout] test parser::tokenize::test::test_comments ... ok
[INFO] [stdout] test parser::tokenize::test::test_locations ... ok
[INFO] [stdout] test parser::parser::test::test_simple_enum ... ok
[INFO] [stdout] test parser::parser::test::test_struct_pattern ... ok
[INFO] [stdout] test parser::parser::test::test_struct_type_decl ... ok
[INFO] [stdout] test parser::tokenize::test::test_get_error ... ok
[INFO] [stdout] test parser::tokenize::test::test_numbers ... ok
[INFO] [stdout] test parser::tokenize::test::test_renders_unknown_tokens ... ok
[INFO] [stdout] test parser::parser::test::test_type_variable ... ok
[INFO] [stdout] test parser::parser::test::test_return_with_expression ... ok
[INFO] [stdout] test parser::tokenize::test::test_strings ... ok
[INFO] [stdout] test parser::tokenize::test::test_words ... ok
[INFO] [stdout] test parser::tokenize::test::test_untokenization ... ok
[INFO] [stdout] test parser::tokenize::test::test_tokenize_empty ... ok
[INFO] [stdout] test parser::tokenize::test::test_unclosed_things ... ok
[INFO] [stdout] test util::graph::test::test_find_cycles_dag ... ok
[INFO] [stdout] test util::graph::test::test_find_cycles_empty ... ok
[INFO] [stdout] test util::indexed::test::test_storing_values ... ok
[INFO] [stdout] test util::graph::test::test_reverse_simple ... ok
[INFO] [stdout] test util::graph::test::test_find_cycles_tree ... ok
[INFO] [stdout] test util::graph::test::test_get_topo_ordering_when_cycles ... ok
[INFO] [stdout] test util::graph::test::test_get_topo_ordering_dag ... ok
[INFO] [stdout] test util::graph::test::test_find_cycles_in_graph_with_cycles ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 123 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "57de56a6e30a5764b5a36d0a3bdcb420a6506decb09f0561e3dc00100c984141", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57de56a6e30a5764b5a36d0a3bdcb420a6506decb09f0561e3dc00100c984141", kill_on_drop: false }`
[INFO] [stdout] 57de56a6e30a5764b5a36d0a3bdcb420a6506decb09f0561e3dc00100c984141
