[INFO] cloning repository https://github.com/p0lyw0lf/pwcc
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/p0lyw0lf/pwcc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fp0lyw0lf%2Fpwcc", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fp0lyw0lf%2Fpwcc'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0dab36417dad473e5dbc8d1da869f78d3bb0d170
[INFO] checking p0lyw0lf/pwcc against try#aea72be7e5474dab7f3e28cea3e2e6cfa3d1c3fa for pr-149195-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fp0lyw0lf%2Fpwcc" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/p0lyw0lf/pwcc
[INFO] finished tweaking git repo https://github.com/p0lyw0lf/pwcc
[INFO] tweaked toml for git repo https://github.com/p0lyw0lf/pwcc written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/p0lyw0lf/pwcc on toolchain aea72be7e5474dab7f3e28cea3e2e6cfa3d1c3fa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+aea72be7e5474dab7f3e28cea3e2e6cfa3d1c3fa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/p0lyw0lf/pwcc 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" "+aea72be7e5474dab7f3e28cea3e2e6cfa3d1c3fa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+aea72be7e5474dab7f3e28cea3e2e6cfa3d1c3fa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0d1e4d9dfd3cda8819ec3025d16bf1755b51564ffb200ca2bb579a4af1e0622d
[INFO] running `Command { std: "docker" "start" "-a" "0d1e4d9dfd3cda8819ec3025d16bf1755b51564ffb200ca2bb579a4af1e0622d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0d1e4d9dfd3cda8819ec3025d16bf1755b51564ffb200ca2bb579a4af1e0622d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d1e4d9dfd3cda8819ec3025d16bf1755b51564ffb200ca2bb579a4af1e0622d", kill_on_drop: false }`
[INFO] [stdout] 0d1e4d9dfd3cda8819ec3025d16bf1755b51564ffb200ca2bb579a4af1e0622d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+aea72be7e5474dab7f3e28cea3e2e6cfa3d1c3fa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 487670cf95b886a8f8a08863dd54d0ecb62b5fdf25cd6d869556e0b42f62a7be
[INFO] running `Command { std: "docker" "start" "-a" "487670cf95b886a8f8a08863dd54d0ecb62b5fdf25cd6d869556e0b42f62a7be", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]     Checking gimli v0.31.1
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]     Checking rustc-demangle v0.1.26
[INFO] [stderr]     Checking bitflags v2.9.2
[INFO] [stderr]    Compiling owo-colors v4.2.2
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking cfg-if v1.0.3
[INFO] [stderr]     Checking unicode-linebreak v0.1.5
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking unicode-width v0.2.1
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]     Checking is_ci v1.2.0
[INFO] [stderr]     Checking supports-hyperlinks v3.1.0
[INFO] [stderr]     Checking supports-color v3.0.2
[INFO] [stderr]     Checking supports-unicode v3.0.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]     Checking textwrap v0.16.2
[INFO] [stderr]     Checking quote v1.0.40
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking syn v2.0.106
[INFO] [stderr]     Checking terminal_size v0.4.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking addr2line v0.24.2
[INFO] [stderr]     Checking backtrace v0.3.75
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking functional_macros v0.0.9 (/opt/rustwide/workdir/functional_macros)
[INFO] [stderr]     Checking backtrace-ext v0.2.1
[INFO] [stderr]    Compiling miette-derive v7.6.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]     Checking miette v7.6.0
[INFO] [stderr]     Checking functional v0.0.9 (/opt/rustwide/workdir/functional)
[INFO] [stderr] // Node AFiltered1: filtering B due to multiple conflicting generic contexts
[INFO] [stderr] // Node AFiltered1: filtering B due to multiple conflicting generic contexts
[INFO] [stderr] // Node AFiltered2: filtering B due to multiple conflicting generic contexts
[INFO] [stderr] // Node DFiltered1: filtering C due to multiple conflicting generic contexts
[INFO] [stderr] // Node DFiltered1: filtering C due to multiple conflicting generic contexts
[INFO] [stderr] // Node DFiltered2: filtering C due to multiple conflicting generic contexts
[INFO] [stderr] // Node DFiltered2: filtering C due to multiple conflicting generic contexts
[INFO] [stderr] // Node A: filtering B due to C not being able to be transformed by it
[INFO] [stderr]     Checking pwcc_util v0.0.9 (/opt/rustwide/workdir/pwcc_util)
[INFO] [stdout] warning: unused macro definition: `try_parse`
[INFO] [stdout]   --> pwcc_util/src/parser/macros.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 | macro_rules! try_parse {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `nodes`
[INFO] [stdout]    --> pwcc_util/src/parser/macros.rs:198:14
[INFO] [stdout]     |
[INFO] [stdout] 198 | macro_rules! nodes {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodes`
[INFO] [stdout]    --> pwcc_util/src/parser/macros.rs:343:16
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub(super) use nodes;
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> pwcc_util/src/parser/traits.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `try_parse`
[INFO] [stdout]   --> pwcc_util/src/parser/macros.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 | macro_rules! try_parse {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `nodes`
[INFO] [stdout]    --> pwcc_util/src/parser/macros.rs:198:14
[INFO] [stdout]     |
[INFO] [stdout] 198 | macro_rules! nodes {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodes`
[INFO] [stdout]    --> pwcc_util/src/parser/macros.rs:343:16
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub(super) use nodes;
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> pwcc_util/src/parser/traits.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `val` is never read
[INFO] [stdout]   --> functional/src/test_foldable.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         val: T,
[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: value assigned to `val` is never read
[INFO] [stdout]   --> functional/src/test_foldable.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         val: T,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `tmp_0` is never read
[INFO] [stdout]   --> functional/src/test_visit.rs:27:22
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct C(pub i32);
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `val` is never read
[INFO] [stdout]    --> functional/src/test_visit.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         pub val: i32,
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking pwcc v0.0.9 (/opt/rustwide/workdir/pwcc)
[INFO] [stdout] error[E0583]: file not found for module `errors`
[INFO] [stdout]   --> pwcc/src/parser/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | mod errors;
[INFO] [stdout]    | ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: to create the module `errors`, create file "pwcc/src/parser/errors.rs" or "pwcc/src/parser/errors/mod.rs"
[INFO] [stdout]    = note: if there is a `mod errors` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `span`
[INFO] [stdout]   --> pwcc/src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | mod span;
[INFO] [stdout]    | ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: to create the module `span`, create file "pwcc/src/span.rs" or "pwcc/src/span/mod.rs"
[INFO] [stdout]    = note: if there is a `mod span` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] // Node Instruction: filtering Operand due to Location not being able to be transformed by it
[INFO] [stderr] // Node Instructions: filtering Operand due to Instruction not being able to be transformed by it
[INFO] [stderr] // Node Function: filtering Operand due to Instructions not being able to be transformed by it
[INFO] [stderr] // Node Program: filtering Operand due to Function not being able to be transformed by it
[INFO] [stdout] error[E0583]: file not found for module `errors`
[INFO] [stdout]   --> pwcc/src/parser/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | mod errors;
[INFO] [stdout]    | ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: to create the module `errors`, create file "pwcc/src/parser/errors.rs" or "pwcc/src/parser/errors/mod.rs"
[INFO] [stdout]    = note: if there is a `mod errors` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `span`
[INFO] [stdout]   --> pwcc/src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | mod span;
[INFO] [stdout]    | ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: to create the module `span`, create file "pwcc/src/span.rs" or "pwcc/src/span/mod.rs"
[INFO] [stdout]    = note: if there is a `mod span` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] // Node Instruction: filtering Operand due to Location not being able to be transformed by it
[INFO] [stderr] // Node Instructions: filtering Operand due to Instruction not being able to be transformed by it
[INFO] [stderr] // Node Function: filtering Operand due to Instructions not being able to be transformed by it
[INFO] [stderr] // Node Program: filtering Operand due to Function not being able to be transformed by it
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::BinaryOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::BinaryOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `BinaryOp` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these enums instead
[INFO] [stdout]   |
[INFO] [stdout] 4 - use crate::parser::BinaryOp;
[INFO] [stdout] 4 + use crate::codegen::BinaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 4 - use crate::parser::BinaryOp;
[INFO] [stdout] 4 + use crate::tacky::BinaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PostfixOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::PostfixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `PostfixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PrefixOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::PrefixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::UnaryOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::UnaryOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `UnaryOp` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these enums instead
[INFO] [stdout]   |
[INFO] [stdout] 8 - use crate::parser::UnaryOp;
[INFO] [stdout] 8 + use crate::codegen::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 8 - use crate::parser::UnaryOp;
[INFO] [stdout] 8 + use crate::tacky::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::traits`
[INFO] [stdout]   --> pwcc/src/parser/helpers.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::traits::FromTokens;
[INFO] [stdout]    |                    ^^^^^^ could not find `traits` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::traits`
[INFO] [stdout]   --> pwcc/src/parser/helpers.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::traits::ToTokens;
[INFO] [stdout]    |                    ^^^^^^ could not find `traits` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `CaseLabel`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |         use CaseLabel::*;
[INFO] [stdout]     |             ^^^^^^^^^ use of undeclared type `CaseLabel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `AssignmentOp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |         use AssignmentOp::*;
[INFO] [stdout]     |             ^^^^^^^^^^^^ use of undeclared type `AssignmentOp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `BinaryOp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:355:13
[INFO] [stdout]     |
[INFO] [stdout] 355 |         use BinaryOp::*;
[INFO] [stdout]     |             ^^^^^^^^ use of undeclared type `BinaryOp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `Exp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:386:13
[INFO] [stdout]     |
[INFO] [stdout] 386 |         use Exp::*;
[INFO] [stdout]     |             ^^^ use of undeclared type `Exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ToTokens`
[INFO] [stdout]  --> pwcc/src/printer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::ToTokens;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `ToTokens` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this trait instead
[INFO] [stdout]   |
[INFO] [stdout] 4 - use crate::parser::ToTokens;
[INFO] [stdout] 4 + use pwcc_util::parser::ToTokens;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionBody`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::parser::FunctionBody;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionBody` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionDecl`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::parser::FunctionDecl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionDecl` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::parser::Program;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs instead
[INFO] [stdout]    |
[INFO] [stdout] 14 - use crate::parser::Program;
[INFO] [stdout] 14 + use crate::codegen::Program;
[INFO] [stdout]    |
[INFO] [stdout] 14 - use crate::parser::Program;
[INFO] [stdout] 14 + use crate::tacky::Program;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::parser::visit_mut::VisitMutBuilder;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::parser::visit_mut::VisitMutExt;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::GotoStmt`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::GotoStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `GotoStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::RawLabel`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::RawLabel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `RawLabel` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::visit_mut::VisitMutBuilder;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Block`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::Block;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^ no `Block` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::DeclArg`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::DeclArg;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `DeclArg` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ForStmt`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::ForStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `ForStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionBody`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::FunctionBody;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionBody` in `parser`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unresolved item through its public re-export instead
[INFO] [stdout]    |
[INFO] [stdout] 10 - use crate::parser::FunctionBody;
[INFO] [stdout] 10 + use crate::semantic::FunctionBody;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionDecl`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::FunctionDecl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionDecl` in `parser`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unresolved item through its public re-export instead
[INFO] [stdout]    |
[INFO] [stdout] 11 - use crate::parser::FunctionDecl;
[INFO] [stdout] 11 + use crate::semantic::FunctionDecl;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::VarDecl`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::parser::VarDecl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ no `VarDecl` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::BreakStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::BreakStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `BreakStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ContinueStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::ContinueStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `ContinueStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::DoWhileStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::DoWhileStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ no `DoWhileStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ForStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::ForStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `ForStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::LoopLabel`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::LoopLabel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `LoopLabel` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::SwitchStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::SwitchStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^ no `SwitchStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::WhileStmt`
[INFO] [stdout]   --> pwcc/src/semantic/loop_labeling.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::WhileStmt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `WhileStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/loop_labeling.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PostfixOp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::PostfixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `PostfixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PrefixOp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::PrefixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::BinaryOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::BinaryOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `BinaryOp` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these enums instead
[INFO] [stdout]   |
[INFO] [stdout] 4 - use crate::parser::BinaryOp;
[INFO] [stdout] 4 + use crate::codegen::BinaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 4 - use crate::parser::BinaryOp;
[INFO] [stdout] 4 + use crate::tacky::BinaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::UnaryOp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::UnaryOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `UnaryOp` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these enums instead
[INFO] [stdout]   |
[INFO] [stdout] 7 - use crate::parser::UnaryOp;
[INFO] [stdout] 7 + use crate::codegen::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 7 - use crate::parser::UnaryOp;
[INFO] [stdout] 7 + use crate::tacky::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PostfixOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::PostfixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `PostfixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::CaseLabel`
[INFO] [stdout]  --> pwcc/src/semantic/switch_case_collection.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::CaseLabel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `CaseLabel` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PrefixOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::PrefixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::SwitchContext`
[INFO] [stdout]   --> pwcc/src/semantic/switch_case_collection.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::SwitchContext;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `SwitchContext` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::SwitchStmt`
[INFO] [stdout]   --> pwcc/src/semantic/switch_case_collection.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::SwitchStmt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^ no `SwitchStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::UnaryOp`
[INFO] [stdout]  --> pwcc/src/evaluator.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::UnaryOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `UnaryOp` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these enums instead
[INFO] [stdout]   |
[INFO] [stdout] 8 - use crate::parser::UnaryOp;
[INFO] [stdout] 8 + use crate::codegen::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 8 - use crate::parser::UnaryOp;
[INFO] [stdout] 8 + use crate::tacky::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::traits`
[INFO] [stdout]   --> pwcc/src/parser/helpers.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::traits::FromTokens;
[INFO] [stdout]    |                    ^^^^^^ could not find `traits` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::traits`
[INFO] [stdout]   --> pwcc/src/parser/helpers.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::traits::ToTokens;
[INFO] [stdout]    |                    ^^^^^^ could not find `traits` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/switch_case_collection.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `CaseLabel`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |         use CaseLabel::*;
[INFO] [stdout]     |             ^^^^^^^^^ use of undeclared type `CaseLabel`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `AssignmentOp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |         use AssignmentOp::*;
[INFO] [stdout]     |             ^^^^^^^^^^^^ use of undeclared type `AssignmentOp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `BinaryOp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:355:13
[INFO] [stdout]     |
[INFO] [stdout] 355 |         use BinaryOp::*;
[INFO] [stdout]     |             ^^^^^^^^ use of undeclared type `BinaryOp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `Exp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:386:13
[INFO] [stdout]     |
[INFO] [stdout] 386 |         use Exp::*;
[INFO] [stdout]     |             ^^^ use of undeclared type `Exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::DeclArg`
[INFO] [stdout]  --> pwcc/src/semantic/type_check.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::DeclArg;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `DeclArg` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/semantic/type_check.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/type_check.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::BlockItem`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:229:21
[INFO] [stdout]     |
[INFO] [stdout] 229 |         use parser::BlockItem::*;
[INFO] [stdout]     |                     ^^^^^^^^^ could not find `BlockItem` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::Declaration`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |         use parser::Declaration::*;
[INFO] [stdout]     |                     ^^^^^^^^^^^ could not find `Declaration` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::Initializer`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 |         use parser::Initializer::*;
[INFO] [stdout]     |                     ^^^^^^^^^^^ could not find `Initializer` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::FunctionBody`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |         use parser::FunctionBody::*;
[INFO] [stdout]     |                     ^^^^^^^^^^^^ could not find `FunctionBody` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ToTokens`
[INFO] [stdout]  --> pwcc/src/printer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::ToTokens;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `ToTokens` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this trait instead
[INFO] [stdout]   |
[INFO] [stdout] 4 - use crate::parser::ToTokens;
[INFO] [stdout] 4 + use pwcc_util::parser::ToTokens;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::Statement`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |         use parser::Statement::*;
[INFO] [stdout]     |                     ^^^^^^^^^ could not find `Statement` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::PrefixOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:502:29
[INFO] [stdout]     |
[INFO] [stdout] 502 |                 use parser::PrefixOp::*;
[INFO] [stdout]     |                             ^^^^^^^^ could not find `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::PrefixOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:525:33
[INFO] [stdout]     |
[INFO] [stdout] 525 |                     use parser::PrefixOp::*;
[INFO] [stdout]     |                                 ^^^^^^^^ could not find `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::PostfixOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:555:33
[INFO] [stdout]     |
[INFO] [stdout] 555 |                     use parser::PostfixOp::*;
[INFO] [stdout]     |                                 ^^^^^^^^^ could not find `PostfixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::BinaryOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:636:29
[INFO] [stdout]     |
[INFO] [stdout] 636 |                 use parser::BinaryOp::*;
[INFO] [stdout]     |                             ^^^^^^^^ could not find `BinaryOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `Exp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |         use Exp::*;
[INFO] [stdout]     |             ^^^ use of undeclared type `Exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionBody`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::parser::FunctionBody;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionBody` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionDecl`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::parser::FunctionDecl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionDecl` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::parser::Program;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs instead
[INFO] [stdout]    |
[INFO] [stdout] 14 - use crate::parser::Program;
[INFO] [stdout] 14 + use crate::codegen::Program;
[INFO] [stdout]    |
[INFO] [stdout] 14 - use crate::parser::Program;
[INFO] [stdout] 14 + use crate::tacky::Program;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::parser::visit_mut::VisitMutBuilder;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `expect_token` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:533:25
[INFO] [stdout]     |
[INFO] [stdout] 533 |                         expect_token!(iter, span, Colon);
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/mod.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::parser::visit_mut::VisitMutExt;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `try_parse` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |             try_parse!(
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::GotoStmt`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::GotoStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `GotoStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::RawLabel`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::RawLabel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `RawLabel` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `try_parse` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:406:13
[INFO] [stdout]     |
[INFO] [stdout] 406 |             try_parse!(
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/goto.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::visit_mut::VisitMutBuilder;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Block`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::Block;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^ no `Block` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::DeclArg`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::DeclArg;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `DeclArg` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `try_parse` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         try_parse!(
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ForStmt`
[INFO] [stdout]  --> pwcc/src/semantic/ident_resolution.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::ForStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `ForStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `nodes` in this scope
[INFO] [stdout]   --> pwcc/src/parser/mod.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | nodes! {
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionBody`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::FunctionBody;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionBody` in `parser`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unresolved item through its public re-export instead
[INFO] [stdout]    |
[INFO] [stdout] 10 - use crate::parser::FunctionBody;
[INFO] [stdout] 10 + use crate::semantic::FunctionBody;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionDecl`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::FunctionDecl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionDecl` in `parser`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unresolved item through its public re-export instead
[INFO] [stdout]    |
[INFO] [stdout] 11 - use crate::parser::FunctionDecl;
[INFO] [stdout] 11 + use crate::semantic::FunctionDecl;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::VarDecl`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::parser::VarDecl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ no `VarDecl` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/ident_resolution.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::BreakStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::BreakStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `BreakStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ContinueStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::ContinueStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `ContinueStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::DoWhileStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::DoWhileStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ no `DoWhileStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::ForStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::ForStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `ForStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::LoopLabel`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::LoopLabel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `LoopLabel` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::SwitchStmt`
[INFO] [stdout]  --> pwcc/src/semantic/loop_labeling.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::SwitchStmt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^ no `SwitchStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::WhileStmt`
[INFO] [stdout]   --> pwcc/src/semantic/loop_labeling.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::WhileStmt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `WhileStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/loop_labeling.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PostfixOp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::PostfixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `PostfixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::PrefixOp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::parser::PrefixOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^ no `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::UnaryOp`
[INFO] [stdout]  --> pwcc/src/semantic/operator_types.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::UnaryOp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `UnaryOp` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these enums instead
[INFO] [stdout]   |
[INFO] [stdout] 7 - use crate::parser::UnaryOp;
[INFO] [stdout] 7 + use crate::codegen::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 7 - use crate::parser::UnaryOp;
[INFO] [stdout] 7 + use crate::tacky::UnaryOp;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::CaseLabel`
[INFO] [stdout]  --> pwcc/src/semantic/switch_case_collection.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::CaseLabel;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `CaseLabel` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::SwitchContext`
[INFO] [stdout]   --> pwcc/src/semantic/switch_case_collection.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::parser::SwitchContext;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `SwitchContext` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::SwitchStmt`
[INFO] [stdout]   --> pwcc/src/semantic/switch_case_collection.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::parser::SwitchStmt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^ no `SwitchStmt` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]   --> pwcc/src/semantic/switch_case_collection.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::DeclArg`
[INFO] [stdout]  --> pwcc/src/semantic/type_check.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::parser::DeclArg;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `DeclArg` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Exp`
[INFO] [stdout]  --> pwcc/src/semantic/type_check.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::Exp;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^ no `Exp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/type_check.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::parser::visit_mut::VisitMut;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FromTokens`
[INFO] [stdout]  --> pwcc/src/semantic/test/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::FromTokens;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^ no `FromTokens` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this trait instead
[INFO] [stdout]   |
[INFO] [stdout] 2 - use crate::parser::FromTokens;
[INFO] [stdout] 2 + use pwcc_util::parser::FromTokens;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]  --> pwcc/src/semantic/test/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::parser::Program;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]   |
[INFO] [stdout] 3 - use crate::parser::Program;
[INFO] [stdout] 3 + use crate::codegen::Program;
[INFO] [stdout]   |
[INFO] [stdout] 3 - use crate::parser::Program;
[INFO] [stdout] 3 + use crate::semantic::Program;
[INFO] [stdout]   |
[INFO] [stdout] 3 - use crate::parser::Program;
[INFO] [stdout] 3 + use crate::tacky::Program;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]  --> pwcc/src/semantic/test/goto.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::parser::Program;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::codegen::Program;
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::semantic::Program;
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::tacky::Program;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/test/goto.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::visit_mut::VisitMutExt;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]  --> pwcc/src/semantic/test/ident_resolution.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::parser::Program;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::codegen::Program;
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::semantic::Program;
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::tacky::Program;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/test/ident_resolution.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::visit_mut::VisitMutExt;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::BlockItem`
[INFO] [stdout]  --> pwcc/src/semantic/test/loop_labeling.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::parser::BlockItem;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `BlockItem` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::FunctionBody`
[INFO] [stdout]  --> pwcc/src/semantic/test/loop_labeling.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::FunctionBody;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FunctionBody` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this unresolved item through its public re-export instead
[INFO] [stdout]   |
[INFO] [stdout] 2 - use crate::parser::FunctionBody;
[INFO] [stdout] 2 + use crate::semantic::FunctionBody;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]  --> pwcc/src/semantic/test/loop_labeling.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::parser::Program;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]   |
[INFO] [stdout] 3 - use crate::parser::Program;
[INFO] [stdout] 3 + use crate::codegen::Program;
[INFO] [stdout]   |
[INFO] [stdout] 3 - use crate::parser::Program;
[INFO] [stdout] 3 + use crate::semantic::Program;
[INFO] [stdout]   |
[INFO] [stdout] 3 - use crate::parser::Program;
[INFO] [stdout] 3 + use crate::tacky::Program;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Statement`
[INFO] [stdout]  --> pwcc/src/semantic/test/loop_labeling.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::parser::Statement;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `Statement` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/test/loop_labeling.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::parser::visit_mut::VisitMutExt;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::Program`
[INFO] [stdout]  --> pwcc/src/semantic/test/type_check.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::parser::Program;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^ no `Program` in `parser`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::codegen::Program;
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::semantic::Program;
[INFO] [stdout]   |
[INFO] [stdout] 1 - use crate::parser::Program;
[INFO] [stdout] 1 + use crate::tacky::Program;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::parser::visit_mut`
[INFO] [stdout]  --> pwcc/src/semantic/test/type_check.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::parser::visit_mut::VisitMutExt;
[INFO] [stdout]   |                    ^^^^^^^^^ could not find `visit_mut` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::BlockItem`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:229:21
[INFO] [stdout]     |
[INFO] [stdout] 229 |         use parser::BlockItem::*;
[INFO] [stdout]     |                     ^^^^^^^^^ could not find `BlockItem` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::Declaration`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |         use parser::Declaration::*;
[INFO] [stdout]     |                     ^^^^^^^^^^^ could not find `Declaration` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::Initializer`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:242:21
[INFO] [stdout]     |
[INFO] [stdout] 242 |         use parser::Initializer::*;
[INFO] [stdout]     |                     ^^^^^^^^^^^ could not find `Initializer` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::FunctionBody`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 |         use parser::FunctionBody::*;
[INFO] [stdout]     |                     ^^^^^^^^^^^^ could not find `FunctionBody` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::Statement`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:276:21
[INFO] [stdout]     |
[INFO] [stdout] 276 |         use parser::Statement::*;
[INFO] [stdout]     |                     ^^^^^^^^^ could not find `Statement` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::PrefixOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:502:29
[INFO] [stdout]     |
[INFO] [stdout] 502 |                 use parser::PrefixOp::*;
[INFO] [stdout]     |                             ^^^^^^^^ could not find `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::PrefixOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:525:33
[INFO] [stdout]     |
[INFO] [stdout] 525 |                     use parser::PrefixOp::*;
[INFO] [stdout]     |                                 ^^^^^^^^ could not find `PrefixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::PostfixOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:555:33
[INFO] [stdout]     |
[INFO] [stdout] 555 |                     use parser::PostfixOp::*;
[INFO] [stdout]     |                                 ^^^^^^^^^ could not find `PostfixOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `parser::BinaryOp`
[INFO] [stdout]    --> pwcc/src/tacky/mod.rs:636:29
[INFO] [stdout]     |
[INFO] [stdout] 636 |                 use parser::BinaryOp::*;
[INFO] [stdout]     |                             ^^^^^^^^ could not find `BinaryOp` in `parser`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `Exp`
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |         use Exp::*;
[INFO] [stdout]     |             ^^^ use of undeclared type `Exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `expect_token` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:533:25
[INFO] [stdout]     |
[INFO] [stdout] 533 |                         expect_token!(iter, span, Colon);
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `try_parse` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:471:13
[INFO] [stdout]     |
[INFO] [stdout] 471 |             try_parse!(
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `try_parse` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:406:13
[INFO] [stdout]     |
[INFO] [stdout] 406 |             try_parse!(
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `try_parse` in this scope
[INFO] [stdout]    --> pwcc/src/parser/mod.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         try_parse!(
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `nodes` in this scope
[INFO] [stdout]   --> pwcc/src/parser/mod.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | nodes! {
[INFO] [stdout]    | ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `Token` is private
[INFO] [stdout]   --> pwcc/src/parser/mod.rs:7:19
[INFO] [stdout]    |
[INFO] [stdout]  7 | use crate::lexer::Token;
[INFO] [stdout]    |                   ^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `Token` is defined here...
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] note: ...and refers to the enum `Token` which is defined here
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^ you could import this directly
[INFO] [stdout]    = note: this error originates in the macro `pwcc_util::tokens` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `Token` is private
[INFO] [stdout]   --> pwcc/src/parser/helpers.rs:8:19
[INFO] [stdout]    |
[INFO] [stdout]  8 | use crate::lexer::Token;
[INFO] [stdout]    |                   ^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `Token` is defined here...
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] note: ...and refers to the enum `Token` which is defined here
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^ you could import this directly
[INFO] [stdout]    = note: this error originates in the macro `pwcc_util::tokens` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `Token` is private
[INFO] [stdout]   --> pwcc/src/printer.rs:3:19
[INFO] [stdout]    |
[INFO] [stdout]  3 | use crate::lexer::Token;
[INFO] [stdout]    |                   ^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `Token` is defined here...
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] note: ...and refers to the enum `Token` which is defined here
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^ you could import this directly
[INFO] [stdout]    = note: this error originates in the macro `pwcc_util::tokens` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::convert::From`
[INFO] [stdout]  --> pwcc/src/parser/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::convert::From;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::parser::helpers::CommaDelimited`
[INFO] [stdout]  --> pwcc/src/parser/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::parser::helpers::CommaDelimited;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0583, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pwcc` (lib) due to 68 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0603]: enum import `Token` is private
[INFO] [stdout]   --> pwcc/src/parser/mod.rs:7:19
[INFO] [stdout]    |
[INFO] [stdout]  7 | use crate::lexer::Token;
[INFO] [stdout]    |                   ^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `Token` is defined here...
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] note: ...and refers to the enum `Token` which is defined here
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^ you could import this directly
[INFO] [stdout]    = note: this error originates in the macro `pwcc_util::tokens` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `Token` is private
[INFO] [stdout]   --> pwcc/src/parser/helpers.rs:8:19
[INFO] [stdout]    |
[INFO] [stdout]  8 | use crate::lexer::Token;
[INFO] [stdout]    |                   ^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `Token` is defined here...
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] note: ...and refers to the enum `Token` which is defined here
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^ you could import this directly
[INFO] [stdout]    = note: this error originates in the macro `pwcc_util::tokens` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: enum import `Token` is private
[INFO] [stdout]   --> pwcc/src/printer.rs:3:19
[INFO] [stdout]    |
[INFO] [stdout]  3 | use crate::lexer::Token;
[INFO] [stdout]    |                   ^^^^^ private enum import
[INFO] [stdout]    |
[INFO] [stdout] note: the enum import `Token` is defined here...
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] note: ...and refers to the enum `Token` which is defined here
[INFO] [stdout]   --> pwcc/src/lexer/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / pwcc_util::tokens! {
[INFO] [stdout]  5 | | Tokenizer for Token with TokenError:
[INFO] [stdout]  6 | |     r"break\b": KeywordBreak,
[INFO] [stdout]  7 | |     r"case\b": KeywordCase,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |     r"~": Tilde,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^ you could import this directly
[INFO] [stdout]    = note: this error originates in the macro `pwcc_util::tokens` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0583, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pwcc` (lib test) due to 81 previous errors
[INFO] running `Command { std: "docker" "inspect" "487670cf95b886a8f8a08863dd54d0ecb62b5fdf25cd6d869556e0b42f62a7be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "487670cf95b886a8f8a08863dd54d0ecb62b5fdf25cd6d869556e0b42f62a7be", kill_on_drop: false }`
[INFO] [stdout] 487670cf95b886a8f8a08863dd54d0ecb62b5fdf25cd6d869556e0b42f62a7be
