[INFO] cloning repository https://github.com/LiemDQ/rucksacc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LiemDQ/rucksacc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLiemDQ%2Frucksacc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLiemDQ%2Frucksacc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 55d04a9b5cdac2e9cbae3ce702d6543ed189330b
[INFO] checking LiemDQ/rucksacc against master#4d1bd0db7f489b22c6d8aa2385937a95412c015b for pr-114682
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLiemDQ%2Frucksacc" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/LiemDQ/rucksacc on toolchain 4d1bd0db7f489b22c6d8aa2385937a95412c015b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/LiemDQ/rucksacc
[INFO] finished tweaking git repo https://github.com/LiemDQ/rucksacc
[INFO] tweaked toml for git repo https://github.com/LiemDQ/rucksacc written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/LiemDQ/rucksacc 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" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[ERROR] this task or one of its parent failed!
[ERROR] no output for 300 seconds
[ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace.
[INFO] checking LiemDQ/rucksacc against try#785364c7e5e0804473a3fddfb579798ea14e3493 for pr-114682
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLiemDQ%2Frucksacc" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/LiemDQ/rucksacc on toolchain 785364c7e5e0804473a3fddfb579798ea14e3493
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/LiemDQ/rucksacc
[INFO] finished tweaking git repo https://github.com/LiemDQ/rucksacc
[INFO] tweaked toml for git repo https://github.com/LiemDQ/rucksacc written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/LiemDQ/rucksacc 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" "+785364c7e5e0804473a3fddfb579798ea14e3493" "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
[ERROR] error running command: no output for 300 seconds
[INFO] checking LiemDQ/rucksacc against try#785364c7e5e0804473a3fddfb579798ea14e3493 for pr-114682
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLiemDQ%2Frucksacc" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/LiemDQ/rucksacc on toolchain 785364c7e5e0804473a3fddfb579798ea14e3493
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/LiemDQ/rucksacc
[INFO] finished tweaking git repo https://github.com/LiemDQ/rucksacc
[INFO] tweaked toml for git repo https://github.com/LiemDQ/rucksacc written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/LiemDQ/rucksacc 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" "+785364c7e5e0804473a3fddfb579798ea14e3493" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded llvm-sys v130.0.4
[INFO] [stderr]   Downloaded cranelift-frontend v0.83.0
[INFO] [stderr]   Downloaded inkwell_internals v0.5.0
[INFO] [stderr]   Downloaded inkwell v0.1.0-beta.4
[INFO] [stderr]   Downloaded cranelift-entity v0.83.0
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.83.0
[INFO] [stderr]   Downloaded cranelift-bforest v0.83.0
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.83.0
[INFO] [stderr]   Downloaded cranelift-codegen v0.83.0
[INFO] [stderr]   Downloaded cranelift v0.83.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 983c12d957edaf395c5c82d311e71d19bc07f91a93934d221277621dc0d98d65
[INFO] running `Command { std: "docker" "start" "-a" "983c12d957edaf395c5c82d311e71d19bc07f91a93934d221277621dc0d98d65", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "983c12d957edaf395c5c82d311e71d19bc07f91a93934d221277621dc0d98d65", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "983c12d957edaf395c5c82d311e71d19bc07f91a93934d221277621dc0d98d65", kill_on_drop: false }`
[INFO] [stdout] 983c12d957edaf395c5c82d311e71d19bc07f91a93934d221277621dc0d98d65
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc22f13db1bed80a61bb2bc20d8106ad94fe138aacf1ea9bb4dcb70f62facc32
[INFO] running `Command { std: "docker" "start" "-a" "fc22f13db1bed80a61bb2bc20d8106ad94fe138aacf1ea9bb4dcb70f62facc32", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.125
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.37
[INFO] [stderr]    Compiling unicode-xid v0.2.3
[INFO] [stderr]    Compiling ucd-trie v0.1.3
[INFO] [stderr]     Checking smallvec v1.8.0
[INFO] [stderr]    Compiling syn v1.0.92
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.83.0
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling regex-syntax v0.6.25
[INFO] [stderr]    Compiling pest v2.1.3
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.83.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling target-lexicon v0.12.3
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]    Compiling semver-parser v0.10.2
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling parking_lot_core v0.8.5
[INFO] [stderr]    Compiling semver v0.11.0
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking cranelift-entity v0.83.0
[INFO] [stderr]     Checking regalloc v0.0.34
[INFO] [stderr]     Checking cranelift-bforest v0.83.0
[INFO] [stderr]     Checking getrandom v0.2.6
[INFO] [stderr]    Compiling indexmap v1.8.1
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]    Compiling regex v1.5.5
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]    Compiling inkwell v0.1.0-beta.4
[INFO] [stderr]     Checking os_str_bytes v6.0.0
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.16
[INFO] [stderr]    Compiling cranelift-codegen v0.83.0
[INFO] [stderr]    Compiling heck v0.4.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking clap_lex v0.2.0
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking once_cell v1.10.0
[INFO] [stderr]     Checking yansi v0.5.1
[INFO] [stderr]     Checking strsim v0.10.0
[INFO] [stderr]     Checking textwrap v0.15.0
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]     Checking ariadne v0.1.5
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling llvm-sys v130.0.4
[INFO] [stderr]    Compiling clap_derive v3.1.7
[INFO] [stderr]    Compiling inkwell_internals v0.5.0
[INFO] [stderr]     Checking clap v3.1.15
[INFO] [stderr]     Checking cranelift-frontend v0.83.0
[INFO] [stderr]     Checking cranelift v0.83.0
[INFO] [stderr]     Checking rucksacc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::str::Chars`
[INFO] [stdout]  --> src/lex.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::str::Chars;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/lex.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PeekNIterator`
[INFO] [stdout]  --> src/lex.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{TextPosition, PeekNIterator, PeekN};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AstKind`
[INFO] [stdout]  --> src/ast.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::lex::{AstKind, Token};
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Qualifiers`
[INFO] [stdout]  --> src/ast.rs:4:54
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::types::{TypeKind, TypeInfo, StorageClass, Qualifiers};
[INFO] [stdout]   |                                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeclaratorTypes`
[INFO] [stdout]  --> src/ast.rs:6:32
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parse::{Declarator, DeclaratorTypes};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::Chars`
[INFO] [stdout]  --> src/lex.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::str::Chars;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/lex.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PeekNIterator`
[INFO] [stdout]  --> src/lex.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{TextPosition, PeekNIterator, PeekN};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AstKind`
[INFO] [stdout]  --> src/ast.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::lex::{AstKind, Token};
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Qualifiers`
[INFO] [stdout]  --> src/ast.rs:4:54
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::types::{TypeKind, TypeInfo, StorageClass, Qualifiers};
[INFO] [stdout]   |                                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeclaratorTypes`
[INFO] [stdout]  --> src/ast.rs:6:32
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parse::{Declarator, DeclaratorTypes};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/parse.rs:761:33
[INFO] [stdout]     |
[INFO] [stdout] 760 | ...                   todo!("Deference var");
[INFO] [stdout]     |                       ---------------------- any code following this expression is unreachable
[INFO] [stdout] 761 | ...                   self.parse_struct_member(iter, &var, &next)?
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]     --> src/parse.rs:1839:17
[INFO] [stdout]      |
[INFO] [stdout] 1838 |                   todo!("Handle user defined types");
[INFO] [stdout]      |                   ---------------------------------- any code following this expression is unreachable
[INFO] [stdout] 1839 | /                 match token.token_type {
[INFO] [stdout] 1840 | |                     TokenKind::Ident(name) => {
[INFO] [stdout] 1841 | |                         if let Some(symbol) = self.syms.typedefs.get_symbol(&name)  {
[INFO] [stdout] 1842 | |                             qty.ty.kind = symbol.typeinfo.kind;
[INFO] [stdout] ...    |
[INFO] [stdout] 1854 | |                     _ => (),
[INFO] [stdout] 1855 | |                 }
[INFO] [stdout]      | |_________________^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/parse.rs:761:33
[INFO] [stdout]     |
[INFO] [stdout] 760 | ...                   todo!("Deference var");
[INFO] [stdout]     |                       ---------------------- any code following this expression is unreachable
[INFO] [stdout] 761 | ...                   self.parse_struct_member(iter, &var, &next)?
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `typeinfo` on type `&ast::Symbol`
[INFO] [stdout]     --> src/parse.rs:1842:50
[INFO] [stdout]      |
[INFO] [stdout] 1842 | ...                   qty.ty.kind = symbol.typeinfo.kind;
[INFO] [stdout]      |                                            ^^^^^^^^ unknown field
[INFO] [stdout]      |
[INFO] [stdout]      = note: available fields are: `name`, `position`, `sclass`, `node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `match` arms have incompatible types
[INFO] [stdout]     --> src/parse.rs:1851:44
[INFO] [stdout]      |
[INFO] [stdout] 1847 |                       TokenKind::Keyword(kw) => match kw {
[INFO] [stdout]      |  _______________________________________________-
[INFO] [stdout] 1848 | |                         Keyword::Struct => self.parse_struct_union_specifier(&mut iter), //struct declaration
[INFO] [stdout]      | |                                            -------------------------------------------- this is found to be of type `Result<TypeInfo, ParseErr>`
[INFO] [stdout] 1849 | |                         Keyword::Union => self.parse_struct_union_specifier(&mut iter),
[INFO] [stdout]      | |                                           -------------------------------------------- this is found to be of type `Result<TypeInfo, ParseErr>`
[INFO] [stdout] 1850 | |                         Keyword::Enum => self.parse_enum_specifier(&mut iter),
[INFO] [stdout]      | |                                          ------------------------------------ this is found to be of type `Result<TypeInfo, ParseErr>`
[INFO] [stdout] 1851 | |                         Keyword::Typeof => (),
[INFO] [stdout]      | |                                            ^^ expected `Result<TypeInfo, ParseErr>`, found `()`
[INFO] [stdout] 1852 | |                         _ => (),
[INFO] [stdout] 1853 | |                     },
[INFO] [stdout]      | |_____________________- `match` arms have incompatible types
[INFO] [stdout]      |
[INFO] [stdout]      = note:   expected enum `Result<TypeInfo, ParseErr>`
[INFO] [stdout]              found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/parse.rs:1890:9
[INFO] [stdout]      |
[INFO] [stdout] 1888 |         todo!("Determine return type of this function");
[INFO] [stdout]      |         ----------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] 1889 |
[INFO] [stdout] 1890 |         Ok(qty)
[INFO] [stdout]      |         ^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]     --> src/parse.rs:1839:17
[INFO] [stdout]      |
[INFO] [stdout] 1838 |                   todo!("Handle user defined types");
[INFO] [stdout]      |                   ---------------------------------- any code following this expression is unreachable
[INFO] [stdout] 1839 | /                 match token.token_type {
[INFO] [stdout] 1840 | |                     TokenKind::Ident(name) => {
[INFO] [stdout] 1841 | |                         if let Some(symbol) = self.syms.typedefs.get_symbol(&name)  {
[INFO] [stdout] 1842 | |                             qty.ty.kind = symbol.typeinfo.kind;
[INFO] [stdout] ...    |
[INFO] [stdout] 1854 | |                     _ => (),
[INFO] [stdout] 1855 | |                 }
[INFO] [stdout]      | |_________________^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `filename` on type `&Lexer<'a>`
[INFO] [stdout]    --> src/lex.rs:425:90
[INFO] [stdout]     |
[INFO] [stdout] 425 |             TextPosition { line: self.curr_line, col: self.curr_col, filename: Some(self.filename.to_string()) }, 
[INFO] [stdout]     |                                                                                          ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `curr_line`, `curr_col`, `prev_line_col`, `body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `filename` on type `&Lexer<'a>`
[INFO] [stdout]    --> src/lex.rs:426:98
[INFO] [stdout]     |
[INFO] [stdout] 426 |             TextPosition {line: self.curr_line, col: self.curr_col + offset, filename: Some(self.filename.to_string())}, 
[INFO] [stdout]     |                                                                                                  ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `curr_line`, `curr_col`, `prev_line_col`, `body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `typeinfo` on type `&ast::Symbol`
[INFO] [stdout]     --> src/parse.rs:1842:50
[INFO] [stdout]      |
[INFO] [stdout] 1842 | ...                   qty.ty.kind = symbol.typeinfo.kind;
[INFO] [stdout]      |                                            ^^^^^^^^ unknown field
[INFO] [stdout]      |
[INFO] [stdout]      = note: available fields are: `name`, `position`, `sclass`, `node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `filename` on type `&mut Lexer<'a>`
[INFO] [stdout]    --> src/lex.rs:676:81
[INFO] [stdout]     |
[INFO] [stdout] 676 |                 Token::new(tok, has_space, self.curr_line, self.curr_col, &self.filename)
[INFO] [stdout]     |                                                                                 ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `curr_line`, `curr_col`, `prev_line_col`, `body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `match` arms have incompatible types
[INFO] [stdout]     --> src/parse.rs:1851:44
[INFO] [stdout]      |
[INFO] [stdout] 1847 |                       TokenKind::Keyword(kw) => match kw {
[INFO] [stdout]      |  _______________________________________________-
[INFO] [stdout] 1848 | |                         Keyword::Struct => self.parse_struct_union_specifier(&mut iter), //struct declaration
[INFO] [stdout]      | |                                            -------------------------------------------- this is found to be of type `Result<TypeInfo, ParseErr>`
[INFO] [stdout] 1849 | |                         Keyword::Union => self.parse_struct_union_specifier(&mut iter),
[INFO] [stdout]      | |                                           -------------------------------------------- this is found to be of type `Result<TypeInfo, ParseErr>`
[INFO] [stdout] 1850 | |                         Keyword::Enum => self.parse_enum_specifier(&mut iter),
[INFO] [stdout]      | |                                          ------------------------------------ this is found to be of type `Result<TypeInfo, ParseErr>`
[INFO] [stdout] 1851 | |                         Keyword::Typeof => (),
[INFO] [stdout]      | |                                            ^^ expected `Result<TypeInfo, ParseErr>`, found `()`
[INFO] [stdout] 1852 | |                         _ => (),
[INFO] [stdout] 1853 | |                     },
[INFO] [stdout]      | |_____________________- `match` arms have incompatible types
[INFO] [stdout]      |
[INFO] [stdout]      = note:   expected enum `Result<TypeInfo, ParseErr>`
[INFO] [stdout]              found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/parse.rs:1890:9
[INFO] [stdout]      |
[INFO] [stdout] 1888 |         todo!("Determine return type of this function");
[INFO] [stdout]      |         ----------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] 1889 |
[INFO] [stdout] 1890 |         Ok(qty)
[INFO] [stdout]      |         ^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `filename` on type `&Lexer<'a>`
[INFO] [stdout]    --> src/lex.rs:425:90
[INFO] [stdout]     |
[INFO] [stdout] 425 |             TextPosition { line: self.curr_line, col: self.curr_col, filename: Some(self.filename.to_string()) }, 
[INFO] [stdout]     |                                                                                          ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `curr_line`, `curr_col`, `prev_line_col`, `body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `filename` on type `&Lexer<'a>`
[INFO] [stdout]    --> src/lex.rs:426:98
[INFO] [stdout]     |
[INFO] [stdout] 426 |             TextPosition {line: self.curr_line, col: self.curr_col + offset, filename: Some(self.filename.to_string())}, 
[INFO] [stdout]     |                                                                                                  ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `curr_line`, `curr_col`, `prev_line_col`, `body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `filename` on type `&mut Lexer<'a>`
[INFO] [stdout]    --> src/lex.rs:676:81
[INFO] [stdout]     |
[INFO] [stdout] 676 |                 Token::new(tok, has_space, self.curr_line, self.curr_col, &self.filename)
[INFO] [stdout]     |                                                                                 ^^^^^^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `curr_line`, `curr_col`, `prev_line_col`, `body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors; 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> src/lex.rs:690:17
[INFO] [stdout]     |
[INFO] [stdout] 690 |     let token = Lexer::read_identifier_or_keyword(&mut iter).unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------- an argument of type `&mut Lexer<'_>` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/lex.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn read_identifier_or_keyword(&mut self, iter: &mut impl Iterator<Item = char>) -> ParseRes<TokenKind> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^ ---------  -------------------------------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 690 |     let token = Lexer::read_identifier_or_keyword(/* &mut Lexer<'_> */, &mut iter).unwrap();
[INFO] [stdout]     |                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied
[INFO] [stdout]    --> src/lex.rs:699:16
[INFO] [stdout]     |
[INFO] [stdout] 699 |     assert_eq!(Lexer::read_symbol(&mut iter).unwrap(),TokenKind::Punct(Punct::AssignShr));
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^ --------- an argument of type `&mut Lexer<'_>` is missing
[INFO] [stdout]     |
[INFO] [stdout] note: method defined here
[INFO] [stdout]    --> src/lex.rs:502:8
[INFO] [stdout]     |
[INFO] [stdout] 502 |     fn read_symbol(&mut self, iter: &mut impl Iterator<Item = char>) -> ParseRes<TokenKind> {
[INFO] [stdout]     |        ^^^^^^^^^^^ ---------  -------------------------------------
[INFO] [stdout] help: provide the argument
[INFO] [stdout]     |
[INFO] [stdout] 699 |     assert_eq!(Lexer::read_symbol(/* &mut Lexer<'_> */, &mut iter).unwrap(),TokenKind::Punct(Punct::AssignShr));
[INFO] [stdout]     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rucksacc` (lib) due to 6 previous errors; 9 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 7 previous errors; 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0308, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rucksacc` (lib test) due to 8 previous errors; 9 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "fc22f13db1bed80a61bb2bc20d8106ad94fe138aacf1ea9bb4dcb70f62facc32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc22f13db1bed80a61bb2bc20d8106ad94fe138aacf1ea9bb4dcb70f62facc32", kill_on_drop: false }`
[INFO] [stdout] fc22f13db1bed80a61bb2bc20d8106ad94fe138aacf1ea9bb4dcb70f62facc32
