[INFO] cloning repository https://github.com/AcrylicShrimp/shader-pack
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AcrylicShrimp/shader-pack" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Fshader-pack", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Fshader-pack'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8ca9a86f80e6071a8f04387c7cc76fbd3e4762f1
[INFO] checking AcrylicShrimp/shader-pack against try#f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 for pr-147834
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAcrylicShrimp%2Fshader-pack" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AcrylicShrimp/shader-pack
[INFO] finished tweaking git repo https://github.com/AcrylicShrimp/shader-pack
[INFO] tweaked toml for git repo https://github.com/AcrylicShrimp/shader-pack written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AcrylicShrimp/shader-pack on toolchain f77b5bc6c7c84df104f86b0dd01d9490e3923fa8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AcrylicShrimp/shader-pack 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" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0ee22d044362b2cfb244532fdadfffd0c92f42faea7565905aa34ad8aa1612bf
[INFO] running `Command { std: "docker" "start" "-a" "0ee22d044362b2cfb244532fdadfffd0c92f42faea7565905aa34ad8aa1612bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0ee22d044362b2cfb244532fdadfffd0c92f42faea7565905aa34ad8aa1612bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0ee22d044362b2cfb244532fdadfffd0c92f42faea7565905aa34ad8aa1612bf", kill_on_drop: false }`
[INFO] [stdout] 0ee22d044362b2cfb244532fdadfffd0c92f42faea7565905aa34ad8aa1612bf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1d8a264944404543025fa9c0d26110a7fb981764046acbdd2f37ba82f357e635
[INFO] running `Command { std: "docker" "start" "-a" "1d8a264944404543025fa9c0d26110a7fb981764046acbdd2f37ba82f357e635", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.93
[INFO] [stderr]    Compiling bumpalo v3.16.0
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.93
[INFO] [stderr]     Checking pin-project-lite v0.2.14
[INFO] [stderr]     Checking colored v2.1.0
[INFO] [stderr]     Checking tokio v1.39.2
[INFO] [stderr]     Checking rustc-hash v2.0.0
[INFO] [stderr]     Checking unicode-xid v0.2.4
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling syn v2.0.74
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.93
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.93
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.93
[INFO] [stderr]     Checking shader-pack v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_COMPTIME` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:103:55
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let keyword_comptime = parse_keyword(cursor, *KEYWORD_COMPTIME)?;
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:105:45
[INFO] [stdout]     |
[INFO] [stdout] 105 |         if cursor.lookahead_0().is_keyword(*KEYWORD_IF) {
[INFO] [stdout]     |                                             ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:139:48
[INFO] [stdout]     |
[INFO] [stdout] 139 |         while cursor.lookahead_0().is_keyword(*KEYWORD_ELSE)
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:140:49
[INFO] [stdout]     |
[INFO] [stdout] 140 |             && cursor.lookahead_1().is_keyword(*KEYWORD_IF)
[INFO] [stdout]     |                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:146:61
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let else_part = if cursor.lookahead_0().is_keyword(*KEYWORD_ELSE) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:170:49
[INFO] [stdout]     |
[INFO] [stdout] 170 |         let keyword_if = parse_keyword(cursor, *KEYWORD_IF)?;
[INFO] [stdout]     |                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:192:51
[INFO] [stdout]     |
[INFO] [stdout] 192 |         let keyword_else = parse_keyword(cursor, *KEYWORD_ELSE)?;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:193:49
[INFO] [stdout]     |
[INFO] [stdout] 193 |         let keyword_if = parse_keyword(cursor, *KEYWORD_IF)?;
[INFO] [stdout]     |                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:216:51
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let keyword_else = parse_keyword(cursor, *KEYWORD_ELSE)?;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_NOT` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:260:52
[INFO] [stdout]     |
[INFO] [stdout] 260 |         } else if cursor.lookahead_0().is_keyword(*KEYWORD_NOT) {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_AND` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:294:49
[INFO] [stdout]     |
[INFO] [stdout] 294 |             if cursor.lookahead_0().is_keyword(*KEYWORD_AND) {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_AND` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:296:58
[INFO] [stdout]     |
[INFO] [stdout] 296 |                 let keyword_and = parse_keyword(cursor, *KEYWORD_AND)?;
[INFO] [stdout]     |                                                          ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_OR` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:312:56
[INFO] [stdout]     |
[INFO] [stdout] 312 |             } else if cursor.lookahead_0().is_keyword(*KEYWORD_OR) {
[INFO] [stdout]     |                                                        ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_OR` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:314:57
[INFO] [stdout]     |
[INFO] [stdout] 314 |                 let keyword_or = parse_keyword(cursor, *KEYWORD_OR)?;
[INFO] [stdout]     |                                                         ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_NOT` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:395:50
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let keyword_not = parse_keyword(cursor, *KEYWORD_NOT)?;
[INFO] [stdout]     |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_LOOP` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:415:51
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let keyword_loop = parse_keyword(cursor, *KEYWORD_LOOP)?;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_TIMES` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:417:52
[INFO] [stdout]     |
[INFO] [stdout] 417 |         let keyword_times = parse_keyword(cursor, *KEYWORD_TIMES)?;
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Keyword` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:519:58
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub fn parse_keyword<T>(cursor: &mut Cursor<T>, keyword: Keyword) -> Option<AstKeyword>
[INFO] [stdout]     |                                                          ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `SYMBOL_IDENT` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:575:48
[INFO] [stdout]     |
[INFO] [stdout] 575 |     let keyword_ident = parse_keyword(cursor, *SYMBOL_IDENT)?;
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this static
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::parse::symbols::SYMBOL_IDENT;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[wasm_bindgen]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[wasm_bindgen]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen::prelude::__wasm_bindgen_class_marker` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen::prelude::__wasm_bindgen_class_marker` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen::prelude::__wasm_bindgen_class_marker` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[wasm_bindgen]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_COMPTIME` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:103:55
[INFO] [stdout]     |
[INFO] [stdout] 103 |         let keyword_comptime = parse_keyword(cursor, *KEYWORD_COMPTIME)?;
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:105:45
[INFO] [stdout]     |
[INFO] [stdout] 105 |         if cursor.lookahead_0().is_keyword(*KEYWORD_IF) {
[INFO] [stdout]     |                                             ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:139:48
[INFO] [stdout]     |
[INFO] [stdout] 139 |         while cursor.lookahead_0().is_keyword(*KEYWORD_ELSE)
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:140:49
[INFO] [stdout]     |
[INFO] [stdout] 140 |             && cursor.lookahead_1().is_keyword(*KEYWORD_IF)
[INFO] [stdout]     |                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:146:61
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let else_part = if cursor.lookahead_0().is_keyword(*KEYWORD_ELSE) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:170:49
[INFO] [stdout]     |
[INFO] [stdout] 170 |         let keyword_if = parse_keyword(cursor, *KEYWORD_IF)?;
[INFO] [stdout]     |                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:192:51
[INFO] [stdout]     |
[INFO] [stdout] 192 |         let keyword_else = parse_keyword(cursor, *KEYWORD_ELSE)?;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_IF` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:193:49
[INFO] [stdout]     |
[INFO] [stdout] 193 |         let keyword_if = parse_keyword(cursor, *KEYWORD_IF)?;
[INFO] [stdout]     |                                                 ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_ELSE` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:216:51
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let keyword_else = parse_keyword(cursor, *KEYWORD_ELSE)?;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_NOT` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:260:52
[INFO] [stdout]     |
[INFO] [stdout] 260 |         } else if cursor.lookahead_0().is_keyword(*KEYWORD_NOT) {
[INFO] [stdout]     |                                                    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_AND` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:294:49
[INFO] [stdout]     |
[INFO] [stdout] 294 |             if cursor.lookahead_0().is_keyword(*KEYWORD_AND) {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_AND` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:296:58
[INFO] [stdout]     |
[INFO] [stdout] 296 |                 let keyword_and = parse_keyword(cursor, *KEYWORD_AND)?;
[INFO] [stdout]     |                                                          ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_OR` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:312:56
[INFO] [stdout]     |
[INFO] [stdout] 312 |             } else if cursor.lookahead_0().is_keyword(*KEYWORD_OR) {
[INFO] [stdout]     |                                                        ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_OR` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:314:57
[INFO] [stdout]     |
[INFO] [stdout] 314 |                 let keyword_or = parse_keyword(cursor, *KEYWORD_OR)?;
[INFO] [stdout]     |                                                         ^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_NOT` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:395:50
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let keyword_not = parse_keyword(cursor, *KEYWORD_NOT)?;
[INFO] [stdout]     |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_LOOP` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:415:51
[INFO] [stdout]     |
[INFO] [stdout] 415 |         let keyword_loop = parse_keyword(cursor, *KEYWORD_LOOP)?;
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `KEYWORD_TIMES` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:417:52
[INFO] [stdout]     |
[INFO] [stdout] 417 |         let keyword_times = parse_keyword(cursor, *KEYWORD_TIMES)?;
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Keyword` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:519:58
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub fn parse_keyword<T>(cursor: &mut Cursor<T>, keyword: Keyword) -> Option<AstKeyword>
[INFO] [stdout]     |                                                          ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `SYMBOL_IDENT` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:575:48
[INFO] [stdout]     |
[INFO] [stdout] 575 |     let keyword_ident = parse_keyword(cursor, *SYMBOL_IDENT)?;
[INFO] [stdout]     |                                                ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this static
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::parse::symbols::SYMBOL_IDENT;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[wasm_bindgen]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[wasm_bindgen]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen::prelude::__wasm_bindgen_class_marker` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen::prelude::__wasm_bindgen_class_marker` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen::prelude::__wasm_bindgen_class_marker` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `wasm_bindgen_unstable_test_coverage`
[INFO] [stdout]   --> src/lib.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[wasm_bindgen]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `wasm_bindgen` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the attribute macro `wasm_bindgen` may come from an old version of the `wasm_bindgen_macro` crate, try updating your dependency with `cargo update -p wasm_bindgen_macro`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the attribute macro `wasm_bindgen` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:80:23
[INFO] [stdout]     |
[INFO] [stdout]  80 |         let punc_at = parse_punc(cursor, AstPuncKind::At)?;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:82:27
[INFO] [stdout]     |
[INFO] [stdout]  82 |         let punc_assign = parse_punc(cursor, AstPuncKind::Assign)?;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/parse/parse.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let punc_at = parse_punc(cursor, AstPuncKind::At)?;
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |             span: punc_at.span(),
[INFO] [stdout]    |                   ------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `punc_at` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let punc_at: /* Type */ = parse_punc(cursor, AstPuncKind::At)?;
[INFO] [stdout]    |                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Flag` found for enum `AstCompTimeIfPredicateExprKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:244:59
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     kind: AstCompTimeIfPredicateExprKind::Flag(expr),
[INFO] [stdout]     |                                                           ^^^^ variant or associated item not found in `AstCompTimeIfPredicateExprKind`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum AstCompTimeIfPredicateExprKind {
[INFO] [stdout]     | --------------------------------------- variant or associated item `Flag` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Paren` found for enum `AstCompTimeIfPredicateExprKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:257:59
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     kind: AstCompTimeIfPredicateExprKind::Paren(expr),
[INFO] [stdout]     |                                                           ^^^^^ variant or associated item not found in `AstCompTimeIfPredicateExprKind`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum AstCompTimeIfPredicateExprKind {
[INFO] [stdout]     | --------------------------------------- variant or associated item `Paren` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Not` found for enum `AstCompTimeIfPredicateExprKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:270:59
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     kind: AstCompTimeIfPredicateExprKind::Not(expr),
[INFO] [stdout]     |                                                           ^^^ variant or associated item not found in `AstCompTimeIfPredicateExprKind`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum AstCompTimeIfPredicateExprKind {
[INFO] [stdout]     | --------------------------------------- variant or associated item `Not` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `token::Token` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:276:44
[INFO] [stdout]     |
[INFO] [stdout] 276 |                 cursor.lookahead_0().token.unwrap().span(),
[INFO] [stdout]     |                                            ^^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/lexer/token.rs:6:1
[INFO] [stdout]     |
[INFO] [stdout]   6 | pub struct Token {
[INFO] [stdout]     | ---------------- method `unwrap` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `invalid` found for struct `span::span::Span` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:281:30
[INFO] [stdout]     |
[INFO] [stdout] 281 |             let span = Span::invalid();
[INFO] [stdout]     |                              ^^^^^^^ function or associated item not found in `span::span::Span`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/span/span.rs:2:1
[INFO] [stdout]     |
[INFO] [stdout]   2 | pub struct Span {
[INFO] [stdout]     | --------------- function or associated item `invalid` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `span::span::Span` consider using one of the following associated functions:
[INFO] [stdout]       span::span::Span::new
[INFO] [stdout]       span::span::Span::empty
[INFO] [stdout]       span::span::Span::merge
[INFO] [stdout]    --> src/span/span.rs:10:5
[INFO] [stdout]     |
[INFO] [stdout]  10 |     pub const fn new(low: u32, high: u32) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  15 |     pub const fn empty(pos: u32) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn merge(lhs: Self, rhs: Self) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:298:28
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 let span = expr_span.expand_to(rhs.span.high());
[INFO] [stdout]     |                            ^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let punc_open_paren = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:364:20
[INFO] [stdout]     |
[INFO] [stdout] 364 |             if let Some(punc_close_paren) = parse_punc(cursor, AstPuncKind::CloseParen) {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^   ------------------------------------------- this expression has type `AstPunc`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `token::Token` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:369:48
[INFO] [stdout]     |
[INFO] [stdout] 369 |                     cursor.lookahead_0().token.unwrap().span(),
[INFO] [stdout]     |                                                ^^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/lexer/token.rs:6:1
[INFO] [stdout]     |
[INFO] [stdout]   6 | pub struct Token {
[INFO] [stdout]     | ---------------- method `unwrap` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `AstPunc` has no field named `span_low`
[INFO] [stdout]    --> src/parse/parse.rs:374:21
[INFO] [stdout]     |
[INFO] [stdout] 374 |                     span_low: u32::MAX,
[INFO] [stdout]     |                     ^^^^^^^^ `AstPunc` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:361:13
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let punc_open_paren = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |             span: punc_open_paren.span(),
[INFO] [stdout]     |                   --------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_open_paren` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let punc_open_paren: /* Type */ = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:441:31
[INFO] [stdout]     |
[INFO] [stdout] 441 |         let punc_open_brace = parse_punc(cursor, AstPuncKind::OpenBrace)?;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:452:32
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let punc_close_brace = parse_punc(cursor, AstPuncKind::CloseBrace)?;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:441:13
[INFO] [stdout]     |
[INFO] [stdout] 441 |         let punc_open_brace = parse_punc(cursor, AstPuncKind::OpenBrace)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 |         let span = punc_open_brace
[INFO] [stdout]     |                    --------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_open_brace` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 441 |         let punc_open_brace: /* Type */ = parse_punc(cursor, AstPuncKind::OpenBrace)?;
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:452:13
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let punc_close_brace = parse_punc(cursor, AstPuncKind::CloseBrace)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 455 |             .expand_to(punc_close_brace.span().high());
[INFO] [stdout]     |                        ---------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_close_brace` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let punc_close_brace: /* Type */ = parse_punc(cursor, AstPuncKind::CloseBrace)?;
[INFO] [stdout]     |                             ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:493:13
[INFO] [stdout]     |
[INFO] [stdout] 492 |           match literal.token {
[INFO] [stdout]     |                 ------------- this expression has type `token::Token`
[INFO] [stdout] 493 | /             Some(Token {
[INFO] [stdout] 494 | |                 span_low,
[INFO] [stdout] 495 | |                 kind:
[INFO] [stdout] 496 | |                     TokenKind::StringLiteral {
[INFO] [stdout] ...   |
[INFO] [stdout] 502 | |                 ..
[INFO] [stdout] 503 | |             }) => {
[INFO] [stdout]     | |______________^ expected `Token`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `token::Token`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:524:9
[INFO] [stdout]     |
[INFO] [stdout] 523 |       match cursor.lookahead_0().token {
[INFO] [stdout]     |             -------------------------- this expression has type `token::Token`
[INFO] [stdout] 524 | /         Some(Token {
[INFO] [stdout] 525 | |             span_low,
[INFO] [stdout] 526 | |             kind: TokenKind::Id { symbol },
[INFO] [stdout] 527 | |             ..
[INFO] [stdout] 528 | |         }) if symbol == keyword.symbol => {
[INFO] [stdout]     | |__________^ expected `Token`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `token::Token`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0027]: pattern does not mention field `len`
[INFO] [stdout]    --> src/parse/parse.rs:526:19
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol },
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^ missing field `len`
[INFO] [stdout]     |
[INFO] [stdout] help: include the missing field in the pattern
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol, len },
[INFO] [stdout]     |                                         +++++
[INFO] [stdout] help: if you don't care about this missing field, you can explicitly ignore it
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol, len: _ },
[INFO] [stdout]     |                                         ++++++++
[INFO] [stdout] help: or always ignore missing fields here
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol, .. },
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:544:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     match cursor.lookahead_0().token {
[INFO] [stdout]     |           -------------------------- this expression has type `token::Token`
[INFO] [stdout] 544 |         Some(token) if token.kind == kind.into_token_kind() => {
[INFO] [stdout]     |         ^^^^^^^^^^^ expected `Token`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `token::Token`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_token_kind` found for enum `AstPuncKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:544:43
[INFO] [stdout]     |
[INFO] [stdout] 544 |         Some(token) if token.kind == kind.into_token_kind() => {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:489:1
[INFO] [stdout]     |
[INFO] [stdout] 489 | pub enum AstPuncKind {
[INFO] [stdout]     | -------------------- method `into_token_kind` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `matches_token_kind` with a similar name, but with different arguments
[INFO] [stdout]    --> src/parse/ast.rs:539:5
[INFO] [stdout]     |
[INFO] [stdout] 539 |     pub fn matches_token_kind(self, token_kind: TokenKind) -> bool {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `AstPunc` has no field named `span_low`
[INFO] [stdout]    --> src/parse/parse.rs:548:17
[INFO] [stdout]     |
[INFO] [stdout] 548 |                 span_low: token.span_low,
[INFO] [stdout]     |                 ^^^^^^^^ `AstPunc` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `match` arms have incompatible types
[INFO] [stdout]    --> src/parse/parse.rs:551:14
[INFO] [stdout]     |
[INFO] [stdout] 543 |       match cursor.lookahead_0().token {
[INFO] [stdout]     |       -------------------------------- `match` arms have incompatible types
[INFO] [stdout] ...
[INFO] [stdout] 546 | /             AstPunc {
[INFO] [stdout] 547 | |                 kind,
[INFO] [stdout] 548 | |                 span_low: token.span_low,
[INFO] [stdout] 549 | |             }
[INFO] [stdout]     | |_____________- this is found to be of type `AstPunc`
[INFO] [stdout] 550 |           }
[INFO] [stdout] 551 |           _ => None,
[INFO] [stdout]     |                ^^^^ expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `parse_id` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:560:26
[INFO] [stdout]     |
[INFO] [stdout] 560 |     let (span, symbol) = parse_id(cursor)?;
[INFO] [stdout]     |                          ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:574:21
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let punc_bang = parse_punc(cursor, AstPuncKind::LogNot)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:576:27
[INFO] [stdout]     |
[INFO] [stdout] 576 |     let punc_open_paren = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `parse_string_literal` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:577:20
[INFO] [stdout]     |
[INFO] [stdout] 577 |     let rule_str = parse_string_literal(cursor)?;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `lookahead_punc_0` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:578:33
[INFO] [stdout]     |
[INFO] [stdout] 578 |     let (punc_comma, args) = if lookahead_punc_0(cursor, AstPuncKind::CloseParen) {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:581:26
[INFO] [stdout]     |
[INFO] [stdout] 581 |         let punc_comma = parse_punc(cursor, AstPuncKind::Comma)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `lookahead_punc_0` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:584:38
[INFO] [stdout]     |
[INFO] [stdout] 584 |         while cursor.has_token() && !lookahead_punc_0(cursor, AstPuncKind::CloseParen) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:589:17
[INFO] [stdout]     |
[INFO] [stdout] 588 |             let span = match punc_comma {
[INFO] [stdout]     |                              ---------- this expression has type `AstPunc`
[INFO] [stdout] 589 |                 Some(punc_comma) => expr.span.expand_to(punc_comma.span().high()),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:590:17
[INFO] [stdout]     |
[INFO] [stdout] 588 |             let span = match punc_comma {
[INFO] [stdout]     |                              ---------- this expression has type `AstPunc`
[INFO] [stdout] 589 |                 Some(punc_comma) => expr.span.expand_to(punc_comma.span().high()),
[INFO] [stdout] 590 |                 None => expr.span,
[INFO] [stdout]     |                 ^^^^ expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `is_some` found for struct `AstPunc` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:592:51
[INFO] [stdout]     |
[INFO] [stdout] 592 |             let is_punc_comma_exists = punc_comma.is_some();
[INFO] [stdout]     |                                                   ^^^^^^^ method not found in `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ------------------ method `is_some` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:598:17
[INFO] [stdout]     |
[INFO] [stdout] 598 |                 punc_comma,
[INFO] [stdout]     |                 ^^^^^^^^^^ expected `Option<AstPunc>`, found `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `Option<AstPunc>`
[INFO] [stdout]              found struct `AstPunc`
[INFO] [stdout] help: try wrapping the expression in `Some`
[INFO] [stdout]     |
[INFO] [stdout] 598 |                 punc_comma: Some(punc_comma),
[INFO] [stdout]     |                 +++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:608:28
[INFO] [stdout]     |
[INFO] [stdout] 608 |     let punc_close_paren = parse_punc(cursor, AstPuncKind::CloseParen)?;
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:574:9
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let punc_bang = parse_punc(cursor, AstPuncKind::LogNot)?;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 612 |         span: punc_bang.span(),
[INFO] [stdout]     |               --------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_bang` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let punc_bang: /* Type */ = parse_punc(cursor, AstPuncKind::LogNot)?;
[INFO] [stdout]     |                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:80:23
[INFO] [stdout]     |
[INFO] [stdout]  80 |         let punc_at = parse_punc(cursor, AstPuncKind::At)?;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:82:27
[INFO] [stdout]     |
[INFO] [stdout]  82 |         let punc_assign = parse_punc(cursor, AstPuncKind::Assign)?;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/parse/parse.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let punc_at = parse_punc(cursor, AstPuncKind::At)?;
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |             span: punc_at.span(),
[INFO] [stdout]    |                   ------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `punc_at` an explicit type
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let punc_at: /* Type */ = parse_punc(cursor, AstPuncKind::At)?;
[INFO] [stdout]    |                    ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Flag` found for enum `AstCompTimeIfPredicateExprKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:244:59
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     kind: AstCompTimeIfPredicateExprKind::Flag(expr),
[INFO] [stdout]     |                                                           ^^^^ variant or associated item not found in `AstCompTimeIfPredicateExprKind`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum AstCompTimeIfPredicateExprKind {
[INFO] [stdout]     | --------------------------------------- variant or associated item `Flag` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Paren` found for enum `AstCompTimeIfPredicateExprKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:257:59
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     kind: AstCompTimeIfPredicateExprKind::Paren(expr),
[INFO] [stdout]     |                                                           ^^^^^ variant or associated item not found in `AstCompTimeIfPredicateExprKind`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum AstCompTimeIfPredicateExprKind {
[INFO] [stdout]     | --------------------------------------- variant or associated item `Paren` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Not` found for enum `AstCompTimeIfPredicateExprKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:270:59
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     kind: AstCompTimeIfPredicateExprKind::Not(expr),
[INFO] [stdout]     |                                                           ^^^ variant or associated item not found in `AstCompTimeIfPredicateExprKind`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:112:1
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub enum AstCompTimeIfPredicateExprKind {
[INFO] [stdout]     | --------------------------------------- variant or associated item `Not` not found for this enum
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `token::Token` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:276:44
[INFO] [stdout]     |
[INFO] [stdout] 276 |                 cursor.lookahead_0().token.unwrap().span(),
[INFO] [stdout]     |                                            ^^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/lexer/token.rs:6:1
[INFO] [stdout]     |
[INFO] [stdout]   6 | pub struct Token {
[INFO] [stdout]     | ---------------- method `unwrap` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `invalid` found for struct `span::span::Span` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:281:30
[INFO] [stdout]     |
[INFO] [stdout] 281 |             let span = Span::invalid();
[INFO] [stdout]     |                              ^^^^^^^ function or associated item not found in `span::span::Span`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/span/span.rs:2:1
[INFO] [stdout]     |
[INFO] [stdout]   2 | pub struct Span {
[INFO] [stdout]     | --------------- function or associated item `invalid` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout] note: if you're trying to build a new `span::span::Span` consider using one of the following associated functions:
[INFO] [stdout]       span::span::Span::new
[INFO] [stdout]       span::span::Span::empty
[INFO] [stdout]       span::span::Span::merge
[INFO] [stdout]    --> src/span/span.rs:10:5
[INFO] [stdout]     |
[INFO] [stdout]  10 |     pub const fn new(low: u32, high: u32) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  15 |     pub const fn empty(pos: u32) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn merge(lhs: Self, rhs: Self) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:298:28
[INFO] [stdout]     |
[INFO] [stdout] 298 |                 let span = expr_span.expand_to(rhs.span.high());
[INFO] [stdout]     |                            ^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let punc_open_paren = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:364:20
[INFO] [stdout]     |
[INFO] [stdout] 364 |             if let Some(punc_close_paren) = parse_punc(cursor, AstPuncKind::CloseParen) {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^   ------------------------------------------- this expression has type `AstPunc`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `token::Token` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:369:48
[INFO] [stdout]     |
[INFO] [stdout] 369 |                     cursor.lookahead_0().token.unwrap().span(),
[INFO] [stdout]     |                                                ^^^^^^ method not found in `token::Token`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/lexer/token.rs:6:1
[INFO] [stdout]     |
[INFO] [stdout]   6 | pub struct Token {
[INFO] [stdout]     | ---------------- method `unwrap` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `AstPunc` has no field named `span_low`
[INFO] [stdout]    --> src/parse/parse.rs:374:21
[INFO] [stdout]     |
[INFO] [stdout] 374 |                     span_low: u32::MAX,
[INFO] [stdout]     |                     ^^^^^^^^ `AstPunc` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:361:13
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let punc_open_paren = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |             span: punc_open_paren.span(),
[INFO] [stdout]     |                   --------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_open_paren` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let punc_open_paren: /* Type */ = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:441:31
[INFO] [stdout]     |
[INFO] [stdout] 441 |         let punc_open_brace = parse_punc(cursor, AstPuncKind::OpenBrace)?;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:452:32
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let punc_close_brace = parse_punc(cursor, AstPuncKind::CloseBrace)?;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:441:13
[INFO] [stdout]     |
[INFO] [stdout] 441 |         let punc_open_brace = parse_punc(cursor, AstPuncKind::OpenBrace)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 |         let span = punc_open_brace
[INFO] [stdout]     |                    --------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_open_brace` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 441 |         let punc_open_brace: /* Type */ = parse_punc(cursor, AstPuncKind::OpenBrace)?;
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:452:13
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let punc_close_brace = parse_punc(cursor, AstPuncKind::CloseBrace)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 455 |             .expand_to(punc_close_brace.span().high());
[INFO] [stdout]     |                        ---------------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_close_brace` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 452 |         let punc_close_brace: /* Type */ = parse_punc(cursor, AstPuncKind::CloseBrace)?;
[INFO] [stdout]     |                             ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:493:13
[INFO] [stdout]     |
[INFO] [stdout] 492 |           match literal.token {
[INFO] [stdout]     |                 ------------- this expression has type `token::Token`
[INFO] [stdout] 493 | /             Some(Token {
[INFO] [stdout] 494 | |                 span_low,
[INFO] [stdout] 495 | |                 kind:
[INFO] [stdout] 496 | |                     TokenKind::StringLiteral {
[INFO] [stdout] ...   |
[INFO] [stdout] 502 | |                 ..
[INFO] [stdout] 503 | |             }) => {
[INFO] [stdout]     | |______________^ expected `Token`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `token::Token`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:524:9
[INFO] [stdout]     |
[INFO] [stdout] 523 |       match cursor.lookahead_0().token {
[INFO] [stdout]     |             -------------------------- this expression has type `token::Token`
[INFO] [stdout] 524 | /         Some(Token {
[INFO] [stdout] 525 | |             span_low,
[INFO] [stdout] 526 | |             kind: TokenKind::Id { symbol },
[INFO] [stdout] 527 | |             ..
[INFO] [stdout] 528 | |         }) if symbol == keyword.symbol => {
[INFO] [stdout]     | |__________^ expected `Token`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `token::Token`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0027]: pattern does not mention field `len`
[INFO] [stdout]    --> src/parse/parse.rs:526:19
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol },
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^ missing field `len`
[INFO] [stdout]     |
[INFO] [stdout] help: include the missing field in the pattern
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol, len },
[INFO] [stdout]     |                                         +++++
[INFO] [stdout] help: if you don't care about this missing field, you can explicitly ignore it
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol, len: _ },
[INFO] [stdout]     |                                         ++++++++
[INFO] [stdout] help: or always ignore missing fields here
[INFO] [stdout]     |
[INFO] [stdout] 526 |             kind: TokenKind::Id { symbol, .. },
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:544:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     match cursor.lookahead_0().token {
[INFO] [stdout]     |           -------------------------- this expression has type `token::Token`
[INFO] [stdout] 544 |         Some(token) if token.kind == kind.into_token_kind() => {
[INFO] [stdout]     |         ^^^^^^^^^^^ expected `Token`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `token::Token`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_token_kind` found for enum `AstPuncKind` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:544:43
[INFO] [stdout]     |
[INFO] [stdout] 544 |         Some(token) if token.kind == kind.into_token_kind() => {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:489:1
[INFO] [stdout]     |
[INFO] [stdout] 489 | pub enum AstPuncKind {
[INFO] [stdout]     | -------------------- method `into_token_kind` not found for this enum
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `matches_token_kind` with a similar name, but with different arguments
[INFO] [stdout]    --> src/parse/ast.rs:539:5
[INFO] [stdout]     |
[INFO] [stdout] 539 |     pub fn matches_token_kind(self, token_kind: TokenKind) -> bool {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `AstPunc` has no field named `span_low`
[INFO] [stdout]    --> src/parse/parse.rs:548:17
[INFO] [stdout]     |
[INFO] [stdout] 548 |                 span_low: token.span_low,
[INFO] [stdout]     |                 ^^^^^^^^ `AstPunc` does not have this field
[INFO] [stdout]     |
[INFO] [stdout]     = note: available fields are: `span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `match` arms have incompatible types
[INFO] [stdout]    --> src/parse/parse.rs:551:14
[INFO] [stdout]     |
[INFO] [stdout] 543 |       match cursor.lookahead_0().token {
[INFO] [stdout]     |       -------------------------------- `match` arms have incompatible types
[INFO] [stdout] ...
[INFO] [stdout] 546 | /             AstPunc {
[INFO] [stdout] 547 | |                 kind,
[INFO] [stdout] 548 | |                 span_low: token.span_low,
[INFO] [stdout] 549 | |             }
[INFO] [stdout]     | |_____________- this is found to be of type `AstPunc`
[INFO] [stdout] 550 |           }
[INFO] [stdout] 551 |           _ => None,
[INFO] [stdout]     |                ^^^^ expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `parse_id` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:560:26
[INFO] [stdout]     |
[INFO] [stdout] 560 |     let (span, symbol) = parse_id(cursor)?;
[INFO] [stdout]     |                          ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:574:21
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let punc_bang = parse_punc(cursor, AstPuncKind::LogNot)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:576:27
[INFO] [stdout]     |
[INFO] [stdout] 576 |     let punc_open_paren = parse_punc(cursor, AstPuncKind::OpenParen)?;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `parse_string_literal` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:577:20
[INFO] [stdout]     |
[INFO] [stdout] 577 |     let rule_str = parse_string_literal(cursor)?;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `lookahead_punc_0` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:578:33
[INFO] [stdout]     |
[INFO] [stdout] 578 |     let (punc_comma, args) = if lookahead_punc_0(cursor, AstPuncKind::CloseParen) {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:581:26
[INFO] [stdout]     |
[INFO] [stdout] 581 |         let punc_comma = parse_punc(cursor, AstPuncKind::Comma)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `lookahead_punc_0` in this scope
[INFO] [stdout]    --> src/parse/parse.rs:584:38
[INFO] [stdout]     |
[INFO] [stdout] 584 |         while cursor.has_token() && !lookahead_punc_0(cursor, AstPuncKind::CloseParen) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:589:17
[INFO] [stdout]     |
[INFO] [stdout] 588 |             let span = match punc_comma {
[INFO] [stdout]     |                              ---------- this expression has type `AstPunc`
[INFO] [stdout] 589 |                 Some(punc_comma) => expr.span.expand_to(punc_comma.span().high()),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:590:17
[INFO] [stdout]     |
[INFO] [stdout] 588 |             let span = match punc_comma {
[INFO] [stdout]     |                              ---------- this expression has type `AstPunc`
[INFO] [stdout] 589 |                 Some(punc_comma) => expr.span.expand_to(punc_comma.span().high()),
[INFO] [stdout] 590 |                 None => expr.span,
[INFO] [stdout]     |                 ^^^^ expected `AstPunc`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `AstPunc`
[INFO] [stdout]                  found enum `Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `is_some` found for struct `AstPunc` in the current scope
[INFO] [stdout]    --> src/parse/parse.rs:592:51
[INFO] [stdout]     |
[INFO] [stdout] 592 |             let is_punc_comma_exists = punc_comma.is_some();
[INFO] [stdout]     |                                                   ^^^^^^^ method not found in `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ------------------ method `is_some` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/parse/parse.rs:598:17
[INFO] [stdout]     |
[INFO] [stdout] 598 |                 punc_comma,
[INFO] [stdout]     |                 ^^^^^^^^^^ expected `Option<AstPunc>`, found `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected enum `Option<AstPunc>`
[INFO] [stdout]              found struct `AstPunc`
[INFO] [stdout] help: try wrapping the expression in `Some`
[INFO] [stdout]     |
[INFO] [stdout] 598 |                 punc_comma: Some(punc_comma),
[INFO] [stdout]     |                 +++++++++++++++++          +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try`
[INFO] [stdout]    --> src/parse/parse.rs:608:28
[INFO] [stdout]     |
[INFO] [stdout] 608 |     let punc_close_paren = parse_punc(cursor, AstPuncKind::CloseParen)?;
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `AstPunc`
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Try` is not implemented for `AstPunc`
[INFO] [stdout]    --> src/parse/ast.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | pub struct AstPunc {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/parse/parse.rs:574:9
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let punc_bang = parse_punc(cursor, AstPuncKind::LogNot)?;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 612 |         span: punc_bang.span(),
[INFO] [stdout]     |               --------- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `punc_bang` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 574 |     let punc_bang: /* Type */ = parse_punc(cursor, AstPuncKind::LogNot)?;
[INFO] [stdout]     |                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_id`
[INFO] [stdout]   --> src/parse/parse.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let node_id = cursor.node_id();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_id`
[INFO] [stdout]   --> src/parse/parse.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let node_id = cursor.node_id();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor`
[INFO] [stdout]    --> src/parse/parse.rs:471:14
[INFO] [stdout]     |
[INFO] [stdout] 471 |     fn parse(cursor: &mut Cursor<T>) -> Option<Self> {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor`
[INFO] [stdout]    --> src/parse/parse.rs:480:14
[INFO] [stdout]     |
[INFO] [stdout] 480 |     fn parse(cursor: &mut Cursor<T>) -> Option<Self> {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_id`
[INFO] [stdout]    --> src/parse/parse.rs:629:9
[INFO] [stdout]     |
[INFO] [stdout] 629 |     let node_id = cursor.node_id();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_id`
[INFO] [stdout]   --> src/parse/parse.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let node_id = cursor.node_id();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_id`
[INFO] [stdout]   --> src/parse/parse.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let node_id = cursor.node_id();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor`
[INFO] [stdout]    --> src/parse/parse.rs:471:14
[INFO] [stdout]     |
[INFO] [stdout] 471 |     fn parse(cursor: &mut Cursor<T>) -> Option<Self> {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor`
[INFO] [stdout]    --> src/parse/parse.rs:480:14
[INFO] [stdout]     |
[INFO] [stdout] 480 |     fn parse(cursor: &mut Cursor<T>) -> Option<Self> {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_id`
[INFO] [stdout]    --> src/parse/parse.rs:629:9
[INFO] [stdout]     |
[INFO] [stdout] 629 |     let node_id = cursor.node_id();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]   --> src/lib.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn compile_shader_pack(source: &str) -> Compiled {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0027, E0277, E0282, E0308, E0412, E0425, E0560, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0027`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `shader-pack` (lib) due to 57 previous errors; 9 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]   --> src/lib.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn compile_shader_pack(source: &str) -> Compiled {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0027, E0277, E0282, E0308, E0412, E0425, E0560, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0027`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `shader-pack` (lib test) due to 57 previous errors; 9 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "1d8a264944404543025fa9c0d26110a7fb981764046acbdd2f37ba82f357e635", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1d8a264944404543025fa9c0d26110a7fb981764046acbdd2f37ba82f357e635", kill_on_drop: false }`
[INFO] [stdout] 1d8a264944404543025fa9c0d26110a7fb981764046acbdd2f37ba82f357e635
