[INFO] cloning repository https://github.com/tcr/gourd [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tcr/gourd" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftcr%2Fgourd", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftcr%2Fgourd'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 847c6387440f45d4989e78f38d12b45c088094d1 [INFO] checking tcr/gourd against try#d8be25549d5418405531341b4be6d8538fc3c42e for pr-156160 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftcr%2Fgourd" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tcr/gourd [INFO] finished tweaking git repo https://github.com/tcr/gourd [INFO] tweaked toml for git repo https://github.com/tcr/gourd written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tcr/gourd on toolchain d8be25549d5418405531341b4be6d8538fc3c42e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d8be25549d5418405531341b4be6d8538fc3c42e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/tcr/gourd 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" "+d8be25549d5418405531341b4be6d8538fc3c42e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb [INFO] running `Command { std: "docker" "start" "665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb" "/opt/rustwide/cargo-home/bin/cargo" "+d8be25549d5418405531341b4be6d8538fc3c42e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb" "/opt/rustwide/cargo-home/bin/cargo" "+d8be25549d5418405531341b4be6d8538fc3c42e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Checking unicode-ident v1.0.24 [INFO] [stderr] Checking log v0.4.32 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Checking tracing-core v0.1.36 [INFO] [stderr] Compiling libc v0.2.186 [INFO] [stderr] Checking bitflags v2.13.0 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Checking rustix v1.1.4 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling smallvec v1.15.2 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Checking tracing-subscriber v0.3.23 [INFO] [stderr] Checking syn v2.0.117 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling serde_json v1.0.150 [INFO] [stderr] Checking crossbeam-queue v0.3.12 [INFO] [stderr] Checking crossbeam-channel v0.5.15 [INFO] [stderr] Checking getrandom v0.4.2 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Checking hashbrown v0.17.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking winnow v0.7.15 [INFO] [stderr] Checking toml_write v0.1.2 [INFO] [stderr] Checking either v1.16.0 [INFO] [stderr] Checking tempfile v3.27.0 [INFO] [stderr] Checking indexmap v2.14.0 [INFO] [stderr] Checking rayon v1.12.0 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling clap_derive v4.6.1 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Checking tracing-flame v0.2.0 [INFO] [stderr] Compiling gourd-codegen v0.1.1 (/opt/rustwide/workdir/gourd-codegen) [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:381:15 [INFO] [stdout] | [INFO] [stdout] 381 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:429:35 [INFO] [stdout] | [INFO] [stdout] 429 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:288:15 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:336:35 [INFO] [stdout] | [INFO] [stdout] 336 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:381:15 [INFO] [stdout] | [INFO] [stdout] 381 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:429:35 [INFO] [stdout] | [INFO] [stdout] 429 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:288:15 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:336:35 [INFO] [stdout] | [INFO] [stdout] 336 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking clap v4.6.1 [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:381:15 [INFO] [stdout] | [INFO] [stdout] 381 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:429:35 [INFO] [stdout] | [INFO] [stdout] 429 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:288:15 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:336:35 [INFO] [stdout] | [INFO] [stdout] 336 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:381:15 [INFO] [stdout] | [INFO] [stdout] 381 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:429:35 [INFO] [stdout] | [INFO] [stdout] 429 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:288:15 [INFO] [stdout] | [INFO] [stdout] 288 | #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `debug` [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:336:35 [INFO] [stdout] | [INFO] [stdout] 336 | ... #[cfg(feature = "debug")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `tracing`, and `validate` [INFO] [stdout] = help: consider adding `debug` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking serde_spanned v0.6.9 [INFO] [stderr] Checking toml_datetime v0.6.11 [INFO] [stderr] Checking toml_edit v0.22.27 [INFO] [stdout] warning: value assigned to `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:500:33 [INFO] [stdout] | [INFO] [stdout] 500 | ... depth = 1; [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 `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:500:33 [INFO] [stdout] | [INFO] [stdout] 500 | ... depth = 1; [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 `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:500:33 [INFO] [stdout] | [INFO] [stdout] 500 | ... depth = 1; [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 `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:407:33 [INFO] [stdout] | [INFO] [stdout] 407 | ... depth = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:407:33 [INFO] [stdout] | [INFO] [stdout] 407 | ... depth = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:64:86 [INFO] [stdout] | [INFO] [stdout] 64 | && content.peek(syn::Ident) { let inner_ident: Ident = content.parse()?; elem_type = format!("[]{}", inner_ident); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:62:81 [INFO] [stdout] | [INFO] [stdout] 62 | if content.peek(syn::Ident) { let elem_ident: Ident = content.parse()?; elem_type = elem_ident.to_string(); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:64:86 [INFO] [stdout] | [INFO] [stdout] 64 | && content.peek(syn::Ident) { let inner_ident: Ident = content.parse()?; elem_type = format!("[]{}", inner_ident); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:62:81 [INFO] [stdout] | [INFO] [stdout] 62 | if content.peek(syn::Ident) { let elem_ident: Ident = content.parse()?; elem_type = elem_ident.to_string(); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:407:33 [INFO] [stdout] | [INFO] [stdout] 407 | ... depth = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:64:86 [INFO] [stdout] | [INFO] [stdout] 64 | && content.peek(syn::Ident) { let inner_ident: Ident = content.parse()?; elem_type = format!("[]{}", inner_ident); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:62:81 [INFO] [stdout] | [INFO] [stdout] 62 | if content.peek(syn::Ident) { let elem_ident: Ident = content.parse()?; elem_type = elem_ident.to_string(); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking gourd-macro v0.1.1 (/opt/rustwide/workdir/gourd-macro) [INFO] [stdout] warning: value assigned to `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/expressions.rs:500:33 [INFO] [stdout] | [INFO] [stdout] 500 | ... depth = 1; [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 `depth` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/statement_parsing.rs:407:33 [INFO] [stdout] | [INFO] [stdout] 407 | ... depth = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:64:86 [INFO] [stdout] | [INFO] [stdout] 64 | && content.peek(syn::Ident) { let inner_ident: Ident = content.parse()?; elem_type = format!("[]{}", inner_ident); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `elem_type` is never read [INFO] [stdout] --> gourd-codegen/src/transpiler/hir/parsing_hir/complex_literals.rs:62:81 [INFO] [stdout] | [INFO] [stdout] 62 | if content.peek(syn::Ident) { let elem_ident: Ident = content.parse()?; elem_type = elem_ident.to_string(); } [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking toml v0.8.23 [INFO] [stderr] Checking gourd v0.1.1 (/opt/rustwide/workdir/gourd) [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/lib.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/lib.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get_ref`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/lib.rs:48:14 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/lib.rs:48:27 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get_ref`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/lib.rs:48:14 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut_ref`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/lib.rs:48:40 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/lib.rs:48:27 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd/src/lib.rs:48:57 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut_ref`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/lib.rs:48:40 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::make_map`: Use GoMap::new() instead [INFO] [stdout] --> gourd/src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | make_map, std_delete, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd/src/lib.rs:48:57 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/lib.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | make_map, std_delete, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::make_map`: Use GoMap::new() instead [INFO] [stdout] --> gourd/src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | make_map, std_delete, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/lib.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | make_map, std_delete, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::make_map`: Use GoMap::new() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:25 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get_ref`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:47 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut_ref`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:60 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:77 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:90 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete_go_map`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:102 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::make_map`: Use GoMap::new() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:25 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get_ref`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:47 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut_ref`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:60 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:77 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:90 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete_go_map`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:102 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/lib.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get_ref`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/lib.rs:48:14 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/lib.rs:48:27 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut_ref`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/lib.rs:48:40 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd/src/lib.rs:48:57 [INFO] [stdout] | [INFO] [stdout] 48 | map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::make_map`: Use GoMap::new() instead [INFO] [stdout] --> gourd/src/lib.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | make_map, std_delete, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/lib.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | make_map, std_delete, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::make_map`: Use GoMap::new() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:25 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_get_ref`: Use GoMap::get() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:47 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_mut_ref`: Use GoMap::set() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:60 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:77 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:90 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `prelude::std::std_delete_go_map`: Use GoMap::delete() instead [INFO] [stdout] --> gourd/src/prelude/mod.rs:115:102 [INFO] [stdout] | [INFO] [stdout] 115 | pub use std::{make_map, map_get, map_get_ref, map_set_mut, map_set_mut_ref, map_set_val, std_delete, std_delete_go_map}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking gourd-check v0.1.0 (/opt/rustwide/workdir/gourd-check) [INFO] [stdout] warning: use of deprecated function `gourd::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:3:22 [INFO] [stdout] | [INFO] [stdout] 3 | use gourd::prelude::{map_get, map_set_mut, map_set_val}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:3:31 [INFO] [stdout] | [INFO] [stdout] 3 | use gourd::prelude::{map_get, map_set_mut, map_set_val}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:3:44 [INFO] [stdout] | [INFO] [stdout] 3 | use gourd::prelude::{map_get, map_set_mut, map_set_val}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | assert_eq!(map_get(&map, "a".to_string()), 42); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | assert_eq!(map_get(&map, "b".to_string()), 7); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_get`: Use GoMap::get() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:13:16 [INFO] [stdout] | [INFO] [stdout] 13 | assert_eq!(map_get(&map, "c".to_string()), 0); // default for missing key [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | assert_eq!(*map_set_mut(&mut map, "b".to_string()), 0); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | assert_eq!(*map_set_mut(&mut map, "a".to_string()), 42); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_mut`: Use GoMap::set() instead [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:29:6 [INFO] [stdout] | [INFO] [stdout] 29 | *map_set_mut(&mut map, "a".to_string()) += 10; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | map_set_val(&mut map, "a".to_string(), 42); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `gourd::map_set_val`: Use GoMap::set() then dereference, or insert directly [INFO] [stdout] --> gourd-macro/tests/prelude_map_ops.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | map_set_val(&mut map, "b".to_string(), 7); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> gourd/src/go_slice.rs:707:13 [INFO] [stdout] | [INFO] [stdout] 707 | let mut s = GoSlice::from_vec(vec![0xff, 0xfe]); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> gourd/src/go_map.rs:339:13 [INFO] [stdout] | [INFO] [stdout] 339 | let mut m: GoMap = GoMap::new(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goFn` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/transpile_go_fn.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn goFn(tokens: TokenStream) -> TokenStream { [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `go_fn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stdio` [INFO] [stdout] --> gourd-check/tests/test_examples.rs:11:29 [INFO] [stdout] | [INFO] [stdout] 11 | use std::process::{Command, Stdio}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAdd [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goChannelRecv [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: ch [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "ch", span: #0 bytes(245..247) }, HirType { kind: Channel(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(285..287) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goCopySlice [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: dst, span: #0 bytes(290..293) }, Punct { char: ':', spacing: Joint, span: #0 bytes(294..295) }, Punct { char: '=', spacing: Alone, span: #0 bytes(295..296) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'dst' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: copy, span: #0 bytes(365..369) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "dst", span: #0 bytes(370..373) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(373..374) }, Ident { ident: "src", span: #0 bytes(375..378) }], span: #0 bytes(369..379) }, Ident { sym: return, span: #0 bytes(388..394) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'copy' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=copy [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: dst, span: #0 bytes(370..373) }, Punct { char: ',', spacing: Alone, span: #0 bytes(373..374) }, Ident { sym: src, span: #0 bytes(375..378) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'dst' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: src, span: #0 bytes(375..378) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'src' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(395..401) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goCopyPartial [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: dst, span: #0 bytes(456..459) }, Punct { char: ':', spacing: Joint, span: #0 bytes(460..461) }, Punct { char: '=', spacing: Alone, span: #0 bytes(461..462) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'dst' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: copy, span: #0 bytes(541..545) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "dst", span: #0 bytes(546..549) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(549..550) }, Ident { ident: "src", span: #0 bytes(551..554) }], span: #0 bytes(545..555) }, Ident { sym: return, span: #0 bytes(564..570) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'copy' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=copy [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: dst, span: #0 bytes(546..549) }, Punct { char: ',', spacing: Alone, span: #0 bytes(549..550) }, Ident { sym: src, span: #0 bytes(551..554) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'dst' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: src, span: #0 bytes(551..554) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'src' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(571..577) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goDeleteFromMap [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(831..832) }, Punct { char: ':', spacing: Joint, span: #0 bytes(833..834) }, Punct { char: '=', spacing: Alone, span: #0 bytes(834..835) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=delete [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(890..891) }, Punct { char: ',', spacing: Alone, span: #0 bytes(891..892) }, Literal { kind: Str, symbol: "b", suffix: None, span: #0 bytes(893..896) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(913..916) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "m", span: #0 bytes(917..918) }], span: #0 bytes(916..919) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(917..918) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goDeleteNonexistent [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(980..981) }, Punct { char: ':', spacing: Joint, span: #0 bytes(982..983) }, Punct { char: '=', spacing: Alone, span: #0 bytes(983..984) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=delete [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1031..1032) }, Punct { char: ',', spacing: Alone, span: #0 bytes(1032..1033) }, Literal { kind: Str, symbol: "z", suffix: None, span: #0 bytes(1034..1037) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1054..1057) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "m", span: #0 bytes(1058..1059) }], span: #0 bytes(1057..1060) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1058..1059) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendSingle [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: s, span: #0 bytes(1313..1314) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1315..1316) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1316..1317) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 's' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(1351..1357) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "s", span: #0 bytes(1358..1359) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(1359..1360) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(1361..1362) }], span: #0 bytes(1357..1363) }, Ident { sym: return, span: #0 bytes(1372..1378) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: s, span: #0 bytes(1358..1359) }, Punct { char: ',', spacing: Alone, span: #0 bytes(1359..1360) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(1361..1362) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 's' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1379..1382) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "result", span: #0 bytes(1383..1389) }], span: #0 bytes(1382..1390) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(1383..1389) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendMultiple [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: s, span: #0 bytes(1448..1449) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1450..1451) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1451..1452) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 's' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(1486..1492) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "s", span: #0 bytes(1493..1494) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(1494..1495) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(1496..1497) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(1497..1498) }, Literal { kind: Integer, symbol: "5", suffix: None, span: #0 bytes(1499..1500) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(1500..1501) }, Literal { kind: Integer, symbol: "6", suffix: None, span: #0 bytes(1502..1503) }], span: #0 bytes(1492..1504) }, Ident { sym: return, span: #0 bytes(1513..1519) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: s, span: #0 bytes(1493..1494) }, Punct { char: ',', spacing: Alone, span: #0 bytes(1494..1495) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(1496..1497) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 's' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1520..1523) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "result", span: #0 bytes(1524..1530) }], span: #0 bytes(1523..1531) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(1524..1530) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendEmpty [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: s, span: #0 bytes(1586..1587) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1588..1589) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1589..1590) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 's' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(1624..1630) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "s", span: #0 bytes(1631..1632) }], span: #0 bytes(1630..1633) }, Ident { sym: return, span: #0 bytes(1642..1648) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: s, span: #0 bytes(1631..1632) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 's' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1649..1652) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "result", span: #0 bytes(1653..1659) }], span: #0 bytes(1652..1660) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(1653..1659) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unused import: `std::convert::From` [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendItem [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(225..231) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: Bracket, stream: TokenStream [], span: #0 bytes(232..234) }, Ident { ident: "int", span: #0 bytes(234..237) }, Group { delimiter: Brace, stream: TokenStream [Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(238..239) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(239..240) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(241..242) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(242..243) }, Literal { kind: Integer, symbol: "3", suffix: None, span: #0 bytes(244..245) }], span: #0 bytes(237..246) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(246..247) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(248..249) }], span: #0 bytes(231..250) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goCopySlice` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | func goCopySlice() int { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_copy_slice` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goCopyPartial` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | func goCopyPartial() int { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_copy_partial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goDeleteFromMap` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | func goDeleteFromMap() int { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_delete_from_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goDeleteNonexistent` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:35:10 [INFO] [stdout] | [INFO] [stdout] 35 | func goDeleteNonexistent() int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_delete_nonexistent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAppendSingle` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | func goAppendSingle() int { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_single` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAppendMultiple` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | func goAppendMultiple() int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_multiple` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAppendEmpty` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/std_copy_delete_append.rs:61:10 [INFO] [stdout] | [INFO] [stdout] 61 | func goAppendEmpty() int { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_empty` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goDayName [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: d [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "d", span: #0 bytes(152..153) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: switch, span: #0 bytes(176..182) }, Ident { sym: d, span: #0 bytes(183..184) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "case", span: #0 bytes(195..199) }, Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(200..201) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(201..202) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(203..204) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(204..205) }, Literal { kind: Integer, symbol: "3", suffix: None, span: #0 bytes(206..207) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(207..208) }, Ident { ident: "return", span: #0 bytes(221..227) }, Literal { kind: Str, symbol: "weekday", suffix: None, span: #0 bytes(228..237) }, Ident { ident: "case", span: #0 bytes(246..250) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(251..252) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(252..253) }, Literal { kind: Integer, symbol: "5", suffix: None, span: #0 bytes(254..255) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(255..256) }, Ident { ident: "return", span: #0 bytes(269..275) }, Literal { kind: Str, symbol: "almost_weekend", suffix: None, span: #0 bytes(276..292) }, Ident { ident: "case", span: #0 bytes(301..305) }, Literal { kind: Integer, symbol: "6", suffix: None, span: #0 bytes(306..307) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(307..308) }, Literal { kind: Integer, symbol: "7", suffix: None, span: #0 bytes(309..310) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(310..311) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(312..313) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(313..314) }, Ident { ident: "return", span: #0 bytes(327..333) }, Literal { kind: Str, symbol: "weekend", suffix: None, span: #0 bytes(334..343) }, Ident { ident: "default", span: #0 bytes(352..359) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(359..360) }, Ident { ident: "return", span: #0 bytes(373..379) }, Literal { kind: Str, symbol: "invalid", suffix: None, span: #0 bytes(380..389) }], span: #0 bytes(185..399) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'switch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: d, span: #0 bytes(183..184) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "case", span: #0 bytes(195..199) }, Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(200..201) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(201..202) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(203..204) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(204..205) }, Literal { kind: Integer, symbol: "3", suffix: None, span: #0 bytes(206..207) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(207..208) }, Ident { ident: "return", span: #0 bytes(221..227) }, Literal { kind: Str, symbol: "weekday", suffix: None, span: #0 bytes(228..237) }, Ident { ident: "case", span: #0 bytes(246..250) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(251..252) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(252..253) }, Literal { kind: Integer, symbol: "5", suffix: None, span: #0 bytes(254..255) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(255..256) }, Ident { ident: "return", span: #0 bytes(269..275) }, Literal { kind: Str, symbol: "almost_weekend", suffix: None, span: #0 bytes(276..292) }, Ident { ident: "case", span: #0 bytes(301..305) }, Literal { kind: Integer, symbol: "6", suffix: None, span: #0 bytes(306..307) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(307..308) }, Literal { kind: Integer, symbol: "7", suffix: None, span: #0 bytes(309..310) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(310..311) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(312..313) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(313..314) }, Ident { ident: "return", span: #0 bytes(327..333) }, Literal { kind: Str, symbol: "weekend", suffix: None, span: #0 bytes(334..343) }, Ident { ident: "default", span: #0 bytes(352..359) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(359..360) }, Ident { ident: "return", span: #0 bytes(373..379) }, Literal { kind: Str, symbol: "invalid", suffix: None, span: #0 bytes(380..389) }], span: #0 bytes(185..399) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'd' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMinimal [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(113..114) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stdout] warning: function `goDayName` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/multi_case_switch.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | func goDayName(d int) string { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_day_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(151..152) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "case", span: #0 bytes(163..167) }, Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(168..169) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(169..170) }, Literal { kind: Str, symbol: "one", suffix: None, span: #0 bytes(183..188) }, Ident { ident: "case", span: #0 bytes(197..201) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(202..203) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(203..204) }, Literal { kind: Str, symbol: "two", suffix: None, span: #0 bytes(217..222) }, Ident { ident: "default", span: #0 bytes(231..238) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(238..239) }, Literal { kind: Str, symbol: "other", suffix: None, span: #0 bytes(252..259) }], span: #0 bytes(153..269) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: go_divmod [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(189..190) }, HirType { kind: I32 }), (Ident { ident: "d", span: #0 bytes(196..197) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }, HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(231..232) }, Punct { char: '/', spacing: Alone, span: #0 bytes(233..234) }, Ident { sym: d, span: #0 bytes(235..236) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: d, span: #0 bytes(235..236) }, Punct { char: ',', spacing: Alone, span: #0 bytes(236..237) }, Ident { sym: n, span: #0 bytes(238..239) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'd' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(238..239) }, Punct { char: '%', spacing: Alone, span: #0 bytes(240..241) }, Ident { sym: d, span: #0 bytes(242..243) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: d, span: #0 bytes(242..243) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'd' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSumSlice [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: data [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "data", span: #0 bytes(203..207) }, HirType { kind: SliceRef(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: sum, span: #0 bytes(229..232) }, Punct { char: ':', spacing: Joint, span: #0 bytes(233..234) }, Punct { char: '=', spacing: Alone, span: #0 bytes(234..235) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'sum' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(264..268) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "if", span: #0 bytes(283..285) }, Ident { ident: "i", span: #0 bytes(286..287) }, Punct { ch: '>', spacing: Joint, span: #0 bytes(288..289) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(289..290) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(291..292) }, Punct { ch: '&', spacing: Joint, span: #0 bytes(293..294) }, Punct { ch: '&', spacing: Alone, span: #0 bytes(294..295) }, Ident { ident: "v", span: #0 bytes(296..297) }, Punct { ch: '>', spacing: Alone, span: #0 bytes(298..299) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(300..301) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "sum", span: #0 bytes(320..323) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(324..325) }, Ident { ident: "sum", span: #0 bytes(326..329) }, Punct { ch: '+', spacing: Alone, span: #0 bytes(330..331) }, Ident { ident: "v", span: #0 bytes(332..333) }], span: #0 bytes(302..347) }], span: #0 bytes(269..357) }, Ident { sym: return, span: #0 bytes(366..372) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: i, span: #0 bytes(286..287) }, Punct { char: '>', spacing: Joint, span: #0 bytes(288..289) }, Punct { char: '=', spacing: Alone, span: #0 bytes(289..290) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'i' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: v, span: #0 bytes(296..297) }, Punct { char: '>', spacing: Alone, span: #0 bytes(298..299) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(300..301) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'v' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: sum, span: #0 bytes(320..323) }, Punct { char: '=', spacing: Alone, span: #0 bytes(324..325) }, Ident { sym: sum, span: #0 bytes(326..329) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'sum' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: sum, span: #0 bytes(326..329) }, Punct { char: '+', spacing: Alone, span: #0 bytes(330..331) }, Ident { sym: v, span: #0 bytes(332..333) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'sum' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: v, span: #0 bytes(332..333) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'v' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: sum, span: #0 bytes(373..376) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'sum' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goMinimal` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/switch_minimal.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | func goMinimal(n int) string { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_minimal` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goShorthand2 [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=true [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=true [INFO] [stderr] [DEBUG] Parsing grouped params [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(243..244) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(246..247) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(274..275) }, Punct { char: '+', spacing: Alone, span: #0 bytes(276..277) }, Ident { sym: b, span: #0 bytes(278..279) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(278..279) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertInt [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(225..226) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(257..258) }, Punct { char: '.', spacing: Alone, span: #0 bytes(258..259) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "int", span: #0 bytes(260..263) }], span: #0 bytes(259..264) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goRecoverNoPanic [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(167..173) }, Punct { char: ':', spacing: Joint, span: #0 bytes(174..175) }, Punct { char: '=', spacing: Alone, span: #0 bytes(175..176) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: recover, span: #0 bytes(177..184) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: #0 bytes(184..186) }, Ident { sym: if, span: #0 bytes(195..197) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(198..204) }, Punct { char: '!', spacing: Joint, span: #0 bytes(205..206) }, Punct { char: '=', spacing: Alone, span: #0 bytes(206..207) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: nil, span: #0 bytes(208..211) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "return", span: #0 bytes(226..232) }, Literal { kind: Str, symbol: "caught", suffix: None, span: #0 bytes(233..241) }], span: #0 bytes(212..251) }, Ident { sym: return, span: #0 bytes(260..266) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'nil' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendMultiple [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(348..354) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: Bracket, stream: TokenStream [], span: #0 bytes(355..357) }, Ident { ident: "int", span: #0 bytes(357..360) }, Group { delimiter: Brace, stream: TokenStream [Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(361..362) }], span: #0 bytes(360..363) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(363..364) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(365..366) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(366..367) }, Literal { kind: Integer, symbol: "3", suffix: None, span: #0 bytes(368..369) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(369..370) }, Literal { kind: Integer, symbol: "4", suffix: None, span: #0 bytes(371..372) }], span: #0 bytes(354..373) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAdd [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSum [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(539..540) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(546..547) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(574..575) }, Punct { char: '+', spacing: Alone, span: #0 bytes(576..577) }, Ident { sym: b, span: #0 bytes(578..579) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(578..579) }, Punct { char: ';', spacing: Alone, span: #0 bytes(579..580) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertString [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(463..464) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(498..499) }, Punct { char: '.', spacing: Alone, span: #0 bytes(499..500) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "string", span: #0 bytes(501..507) }], span: #0 bytes(500..508) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goCountPositive [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: data [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "data", span: #0 bytes(568..572) }, HirType { kind: SliceRef(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: count, span: #0 bytes(594..599) }, Punct { char: ':', spacing: Joint, span: #0 bytes(600..601) }, Punct { char: '=', spacing: Alone, span: #0 bytes(601..602) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'count' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(628..632) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "if", span: #0 bytes(647..649) }, Ident { ident: "data", span: #0 bytes(650..654) }, Group { delimiter: Bracket, stream: TokenStream [Ident { ident: "i", span: #0 bytes(655..656) }], span: #0 bytes(654..657) }, Punct { ch: '>', spacing: Alone, span: #0 bytes(658..659) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(660..661) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "count", span: #0 bytes(680..685) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(686..687) }, Ident { ident: "count", span: #0 bytes(688..693) }, Punct { ch: '+', spacing: Alone, span: #0 bytes(694..695) }, Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(696..697) }], span: #0 bytes(662..711) }], span: #0 bytes(633..721) }, Ident { sym: return, span: #0 bytes(730..736) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(650..654) }, Group { delimiter: Bracket, stream: TokenStream [Ident { ident: "i", span: #0 bytes(655..656) }], span: #0 bytes(654..657) }, Punct { char: '>', spacing: Alone, span: #0 bytes(658..659) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=true, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: i, span: #0 bytes(655..656) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'i' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: count, span: #0 bytes(680..685) }, Punct { char: '=', spacing: Alone, span: #0 bytes(686..687) }, Ident { sym: count, span: #0 bytes(688..693) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'count' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: count, span: #0 bytes(688..693) }, Punct { char: '+', spacing: Alone, span: #0 bytes(694..695) }, Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(696..697) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'count' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: count, span: #0 bytes(737..742) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'count' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goShorthand2 [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=true [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=true [INFO] [stderr] [DEBUG] Parsing grouped params [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(243..244) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(246..247) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(274..275) }, Punct { char: '+', spacing: Alone, span: #0 bytes(276..277) }, Ident { sym: b, span: #0 bytes(278..279) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(278..279) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goShorthand3 [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=true [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=true [INFO] [stderr] [DEBUG] Parsing grouped params [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(549..550) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(552..553) }, HirType { kind: I32 }), (Ident { ident: "c", span: #0 bytes(555..556) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(583..584) }, Punct { char: '+', spacing: Alone, span: #0 bytes(585..586) }, Ident { sym: b, span: #0 bytes(587..588) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(587..588) }, Punct { char: '+', spacing: Alone, span: #0 bytes(589..590) }, Ident { sym: c, span: #0 bytes(591..592) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(591..592) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: go_divmod [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(189..190) }, HirType { kind: I32 }), (Ident { ident: "d", span: #0 bytes(196..197) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }, HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(231..232) }, Punct { char: '/', spacing: Alone, span: #0 bytes(233..234) }, Ident { sym: d, span: #0 bytes(235..236) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: d, span: #0 bytes(235..236) }, Punct { char: ',', spacing: Alone, span: #0 bytes(236..237) }, Ident { sym: n, span: #0 bytes(238..239) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'd' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(238..239) }, Punct { char: '%', spacing: Alone, span: #0 bytes(240..241) }, Ident { sym: d, span: #0 bytes(242..243) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: d, span: #0 bytes(242..243) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'd' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: go_triple [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(571..572) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(578..579) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }, HirType { kind: I32 }, HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(621..622) }, Punct { char: '+', spacing: Alone, span: #0 bytes(623..624) }, Ident { sym: b, span: #0 bytes(625..626) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(625..626) }, Punct { char: ',', spacing: Alone, span: #0 bytes(626..627) }, Ident { sym: a, span: #0 bytes(628..629) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(628..629) }, Punct { char: '*', spacing: Alone, span: #0 bytes(630..631) }, Ident { sym: b, span: #0 bytes(632..633) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(632..633) }, Punct { char: ',', spacing: Alone, span: #0 bytes(633..634) }, Literal { kind: Str, symbol: "pair", suffix: None, span: #0 bytes(635..641) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goRecoverAfterPanic [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(583..584) }, Punct { char: ':', spacing: Joint, span: #0 bytes(585..586) }, Punct { char: '=', spacing: Alone, span: #0 bytes(586..587) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: panic, span: #0 bytes(613..618) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Str, symbol: "oops", suffix: None, span: #0 bytes(619..625) }], span: #0 bytes(618..626) }, Ident { sym: return, span: #0 bytes(639..645) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: recover, span: #0 bytes(688..695) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: #0 bytes(695..697) }, Ident { sym: if, span: #0 bytes(706..708) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: result, span: #0 bytes(709..715) }, Punct { char: '!', spacing: Joint, span: #0 bytes(716..717) }, Punct { char: '=', spacing: Alone, span: #0 bytes(717..718) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'result' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: nil, span: #0 bytes(719..722) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "return", span: #0 bytes(737..743) }, Literal { kind: Str, symbol: "caught", suffix: None, span: #0 bytes(744..752) }], span: #0 bytes(723..762) }, Ident { sym: return, span: #0 bytes(771..777) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'nil' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> gourd-macro/tests/recover_builtin_test.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / go! { [INFO] [stdout] 21 | | func goRecoverAfterPanic() string { [INFO] [stdout] 22 | | f := func() int { [INFO] [stdout] 23 | | panic("oops") [INFO] [stdout] ... | [INFO] [stdout] 33 | | } [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_unreachable statement [INFO] [stdout] | any code following this expression is unreachable [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `go` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertFloat64 [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(728..729) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: F64 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(760..761) }, Punct { char: '.', spacing: Alone, span: #0 bytes(761..762) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "float64", span: #0 bytes(763..770) }], span: #0 bytes(762..771) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goRecoverNoPanic` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/recover_builtin_test.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | func goRecoverNoPanic() string { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_recover_no_panic` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goRecoverAfterPanic` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/recover_builtin_test.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | func goRecoverAfterPanic() string { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_recover_after_panic` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendNoop [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(474..480) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: Bracket, stream: TokenStream [], span: #0 bytes(481..483) }, Ident { ident: "int", span: #0 bytes(483..486) }, Group { delimiter: Brace, stream: TokenStream [Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(487..488) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(488..489) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(490..491) }], span: #0 bytes(486..492) }], span: #0 bytes(480..493) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertUint [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(972..973) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: U32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(1005..1006) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1006..1007) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "uint", span: #0 bytes(1008..1012) }], span: #0 bytes(1007..1013) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSum [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(539..540) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(546..547) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(574..575) }, Punct { char: '+', spacing: Alone, span: #0 bytes(576..577) }, Ident { sym: b, span: #0 bytes(578..579) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(578..579) }, Punct { char: ';', spacing: Alone, span: #0 bytes(579..580) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAbs [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(980..981) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1001..1004) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1005..1006) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1006..1007) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(1008..1009) }, Ident { sym: if, span: #0 bytes(1018..1020) }, Ident { sym: n, span: #0 bytes(1021..1022) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(1021..1022) }, Punct { char: '<', spacing: Alone, span: #0 bytes(1023..1024) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(1025..1026) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1041..1044) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1045..1046) }, Punct { char: '-', spacing: Alone, span: #0 bytes(1047..1048) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1048..1051) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1077..1080) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goShorthand3 [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=true [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=true [INFO] [stderr] [DEBUG] Parsing grouped params [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(549..550) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(552..553) }, HirType { kind: I32 }), (Ident { ident: "c", span: #0 bytes(555..556) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(583..584) }, Punct { char: '+', spacing: Alone, span: #0 bytes(585..586) }, Ident { sym: b, span: #0 bytes(587..588) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(587..588) }, Punct { char: '+', spacing: Alone, span: #0 bytes(589..590) }, Ident { sym: c, span: #0 bytes(591..592) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(591..592) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: go_triple [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(571..572) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(578..579) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }, HirType { kind: I32 }, HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(621..622) }, Punct { char: '+', spacing: Alone, span: #0 bytes(623..624) }, Ident { sym: b, span: #0 bytes(625..626) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(625..626) }, Punct { char: ',', spacing: Alone, span: #0 bytes(626..627) }, Ident { sym: a, span: #0 bytes(628..629) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(628..629) }, Punct { char: '*', spacing: Alone, span: #0 bytes(630..631) }, Ident { sym: b, span: #0 bytes(632..633) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(632..633) }, Punct { char: ',', spacing: Alone, span: #0 bytes(633..634) }, Literal { kind: Str, symbol: "pair", suffix: None, span: #0 bytes(635..641) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSkipFirst [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: data [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "data", span: #0 bytes(920..924) }, HirType { kind: SliceRef(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1022..1025) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "data", span: #0 bytes(1026..1030) }], span: #0 bytes(1025..1031) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(1026..1030) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMapSize [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: _a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoString [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoString [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "_a", span: #0 bytes(1208..1210) }, HirType { kind: StringTy })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1233..1234) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1235..1236) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1236..1237) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1292..1295) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "m", span: #0 bytes(1296..1297) }], span: #0 bytes(1295..1298) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1296..1297) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goShorthand2` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/shorthand_query.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | func goShorthand2(a, b int) int { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_shorthand2` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goShorthand3` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/shorthand_query.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | func goShorthand3(a, b, c int) int { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_shorthand3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSumSlice` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/for_range_test.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | func goSumSlice(data []int) int { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `go_sum_slice` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goCountPositive` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/for_range_test.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | func goCountPositive(data []int) int { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_count_positive` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSkipFirst` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/for_range_test.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 34 | func goSkipFirst(data []int) int { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_skip_first` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertBool [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(1220..1221) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Bool }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(1253..1254) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1254..1255) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "bool", span: #0 bytes(1256..1260) }], span: #0 bytes(1255..1261) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertByte [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(1458..1459) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: U8 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(1491..1492) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1492..1493) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "byte", span: #0 bytes(1494..1498) }], span: #0 bytes(1493..1499) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAppendVar [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: data [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "data", span: #0 bytes(566..570) }, HirType { kind: SliceRef(HirType { kind: I32 }) }), (Ident { ident: "x", span: #0 bytes(578..579) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: append, span: #0 bytes(608..614) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "data", span: #0 bytes(615..619) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(619..620) }, Ident { ident: "x", span: #0 bytes(621..622) }], span: #0 bytes(614..623) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'append' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=append [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(615..619) }, Punct { char: ',', spacing: Alone, span: #0 bytes(619..620) }, Ident { sym: x, span: #0 bytes(621..622) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(621..622) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goAbs [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(980..981) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1001..1004) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1005..1006) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1006..1007) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(1008..1009) }, Ident { sym: if, span: #0 bytes(1018..1020) }, Ident { sym: n, span: #0 bytes(1021..1022) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(1021..1022) }, Punct { char: '<', spacing: Alone, span: #0 bytes(1023..1024) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(1025..1026) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1041..1044) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1045..1046) }, Punct { char: '-', spacing: Alone, span: #0 bytes(1047..1048) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1048..1051) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ret, span: #0 bytes(1077..1080) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ret' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: isEven [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(1882..1883) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Bool }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(1911..1912) }, Punct { char: '%', spacing: Alone, span: #0 bytes(1913..1914) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(1915..1916) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goClosureWithLen [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(106..107) }, Punct { char: ':', spacing: Joint, span: #0 bytes(108..109) }, Punct { char: '=', spacing: Alone, span: #0 bytes(109..110) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: arr [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(148..151) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "arr", span: #0 bytes(152..155) }], span: #0 bytes(151..156) }, Punct { char: '>', spacing: Alone, span: #0 bytes(157..158) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: arr, span: #0 bytes(152..155) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'arr' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMapSize [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: _a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoString [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoString [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "_a", span: #0 bytes(1208..1210) }, HirType { kind: StringTy })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1233..1234) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1235..1236) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1236..1237) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1292..1295) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "m", span: #0 bytes(1296..1297) }], span: #0 bytes(1295..1298) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1296..1297) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: arr, span: #0 bytes(186..189) }, Group { delimiter: Bracket, stream: TokenStream [Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(190..191) }], span: #0 bytes(189..192) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'arr' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=true, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(284..285) }, Group { delimiter: Parenthesis, stream: TokenStream [Punct { ch: '&', spacing: Alone, span: #0 bytes(286..287) }, Ident { ident: "data", span: #0 bytes(287..291) }], span: #0 bytes(285..292) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=f [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(287..291) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goEmptyMap [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1686..1687) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1688..1689) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1689..1690) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1729..1732) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "m", span: #0 bytes(1733..1734) }], span: #0 bytes(1732..1735) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1733..1734) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goAppendItem` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/append_builtin.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | func goAppendItem() []int { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_item` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAppendMultiple` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/append_builtin.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | func goAppendMultiple() []int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_multiple` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAppendNoop` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/append_builtin.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | func goAppendNoop() []int { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_noop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAppendVar` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/append_builtin.rs:30:10 [INFO] [stdout] | [INFO] [stdout] 30 | func goAppendVar(data []int, x int) []int { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_append_var` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTypeAssertRune [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(1699..1700) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Char }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(1732..1733) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1733..1734) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "rune", span: #0 bytes(1735..1739) }], span: #0 bytes(1734..1740) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMin [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(43..44) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(50..51) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: min, span: #0 bytes(78..81) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "a", span: #0 bytes(82..83) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(83..84) }, Ident { ident: "b", span: #0 bytes(85..86) }], span: #0 bytes(81..87) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'min' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=min [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(82..83) }, Punct { char: ',', spacing: Alone, span: #0 bytes(83..84) }, Ident { sym: b, span: #0 bytes(85..86) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(85..86) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goClosureWithIndex [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(386..387) }, Punct { char: ':', spacing: Joint, span: #0 bytes(388..389) }, Punct { char: '=', spacing: Alone, span: #0 bytes(389..390) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: arr [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: arr, span: #0 bytes(432..435) }, Group { delimiter: Bracket, stream: TokenStream [Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(436..437) }], span: #0 bytes(435..438) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'arr' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=true, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(498..499) }, Group { delimiter: Parenthesis, stream: TokenStream [Punct { ch: '&', spacing: Alone, span: #0 bytes(500..501) }, Ident { ident: "data", span: #0 bytes(501..505) }], span: #0 bytes(499..506) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=f [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(501..505) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMakeChannel [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Channel(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: make, span: #0 bytes(462..466) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "chan", span: #0 bytes(467..471) }, Ident { ident: "int", span: #0 bytes(472..475) }], span: #0 bytes(466..476) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'make' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=make [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goClosureWithLen` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/closure_builtin_test.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | func goClosureWithLen() int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_closure_with_len` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goClosureWithIndex` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/closure_builtin_test.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | func goClosureWithIndex() int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_closure_with_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goNestedTypeAssert [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "x", span: #0 bytes(1941..1942) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(1973..1974) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1974..1975) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "int", span: #0 bytes(1976..1979) }], span: #0 bytes(1975..1980) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goTypeAssertInt` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | func goTypeAssertInt(x int) int { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_int` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTypeAssertString` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:22:14 [INFO] [stdout] | [INFO] [stdout] 22 | func goTypeAssertString(x int) String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTypeAssertFloat64` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:34:14 [INFO] [stdout] | [INFO] [stdout] 34 | func goTypeAssertFloat64(x int) f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_float64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTypeAssertUint` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:46:14 [INFO] [stdout] | [INFO] [stdout] 46 | func goTypeAssertUint(x int) uint { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_uint` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTypeAssertBool` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:58:14 [INFO] [stdout] | [INFO] [stdout] 58 | func goTypeAssertBool(x int) bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_bool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTypeAssertByte` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:70:14 [INFO] [stdout] | [INFO] [stdout] 70 | func goTypeAssertByte(x int) byte { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_byte` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTypeAssertRune` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:82:14 [INFO] [stdout] | [INFO] [stdout] 82 | func goTypeAssertRune(x int) rune { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_type_assert_rune` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goNestedTypeAssert` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/type_assertion.rs:94:14 [INFO] [stdout] | [INFO] [stdout] 94 | func goNestedTypeAssert(x int) int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_nested_type_assert` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: isEven [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(1882..1883) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Bool }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(1911..1912) }, Punct { char: '%', spacing: Alone, span: #0 bytes(1913..1914) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(1915..1916) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goIncr [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goMin` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/min_max_test.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | func goMin(a int, b int) int { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_min` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goMax` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/min_max_test.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | func goMax(a int, b int) int { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_max` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goEmptyMap [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1686..1687) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1688..1689) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1689..1690) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1729..1732) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "m", span: #0 bytes(1733..1734) }], span: #0 bytes(1732..1735) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: m, span: #0 bytes(1733..1734) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'm' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMax [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: a [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(118..119) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(125..126) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: max, span: #0 bytes(153..156) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "a", span: #0 bytes(157..158) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(158..159) }, Ident { ident: "b", span: #0 bytes(160..161) }], span: #0 bytes(156..162) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'max' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=max [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(157..158) }, Punct { char: ',', spacing: Alone, span: #0 bytes(158..159) }, Ident { sym: b, span: #0 bytes(160..161) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(160..161) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMakeBufferedChannel [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Channel(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: make, span: #0 bytes(683..687) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "chan", span: #0 bytes(688..692) }, Ident { ident: "int", span: #0 bytes(693..696) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(696..697) }, Literal { kind: Integer, symbol: "10", suffix: None, span: #0 bytes(698..700) }], span: #0 bytes(687..701) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'make' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=make [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goIncr [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goStr [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: bytes [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < u8 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < u8 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "bytes", span: #0 bytes(6243..6248) }, HirType { kind: SliceRef(HirType { kind: U8 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: string, span: #0 bytes(6281..6287) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "bytes", span: #0 bytes(6288..6293) }], span: #0 bytes(6287..6294) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'string' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=string [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: bytes, span: #0 bytes(6288..6293) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'bytes' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goMapSize` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/multi_return_test.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | func goMapSize(_a string) int { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_map_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goEmptyMap` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/multi_return_test.rs:68:10 [INFO] [stdout] | [INFO] [stdout] 68 | func goEmptyMap() int { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `go_empty_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMakeStringChannel [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Channel(HirType { kind: StringTy }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: make, span: #0 bytes(920..924) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "chan", span: #0 bytes(925..929) }, Ident { ident: "string", span: #0 bytes(930..936) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(936..937) }, Literal { kind: Integer, symbol: "5", suffix: None, span: #0 bytes(938..939) }], span: #0 bytes(924..940) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'make' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=make [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goComplexBasic [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Complex128 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(173..174) }, Punct { char: ':', spacing: Joint, span: #0 bytes(175..176) }, Punct { char: '=', spacing: Alone, span: #0 bytes(176..177) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: complex, span: #0 bytes(178..185) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Float, symbol: "1.0", suffix: None, span: #0 bytes(186..189) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(189..190) }, Literal { kind: Float, symbol: "2.0", suffix: None, span: #0 bytes(191..194) }], span: #0 bytes(185..195) }, Ident { sym: return, span: #0 bytes(204..210) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'complex' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=complex [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(211..212) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: main [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(1179..1180) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1181..1182) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1182..1183) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: arr [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(1225..1228) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "arr", span: #0 bytes(1229..1232) }], span: #0 bytes(1228..1233) }, Punct { char: '>', spacing: Alone, span: #0 bytes(1234..1235) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: arr, span: #0 bytes(1229..1232) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'arr' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: arr, span: #0 bytes(1267..1270) }, Group { delimiter: Bracket, stream: TokenStream [Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(1271..1272) }], span: #0 bytes(1270..1273) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'arr' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=true, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(1385..1386) }, Group { delimiter: Parenthesis, stream: TokenStream [Punct { ch: '&', spacing: Alone, span: #0 bytes(1387..1388) }, Ident { ident: "data", span: #0 bytes(1388..1392) }], span: #0 bytes(1386..1393) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=f [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: data, span: #0 bytes(1388..1392) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'data' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goStr [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: bytes [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoSlice < u8 > [INFO] [stderr] [DEBUG] Converted type: & :: gourd :: GoSlice < u8 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "bytes", span: #0 bytes(6243..6248) }, HirType { kind: SliceRef(HirType { kind: U8 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: string, span: #0 bytes(6281..6287) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "bytes", span: #0 bytes(6288..6293) }], span: #0 bytes(6287..6294) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'string' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=string [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: bytes, span: #0 bytes(6288..6293) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'bytes' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goShorthand [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=true [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=true [INFO] [stderr] [DEBUG] Parsing grouped params [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(6718..6719) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(6721..6722) }, HirType { kind: I32 }), (Ident { ident: "c", span: #0 bytes(6724..6725) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(6752..6753) }, Punct { char: '+', spacing: Alone, span: #0 bytes(6754..6755) }, Ident { sym: b, span: #0 bytes(6756..6757) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(6756..6757) }, Punct { char: '+', spacing: Alone, span: #0 bytes(6758..6759) }, Ident { sym: c, span: #0 bytes(6760..6761) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(6760..6761) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSum [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: nums [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "nums", span: #0 bytes(159..163) }, HirType { kind: SliceRef(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(186..191) }, Punct { char: ':', spacing: Joint, span: #0 bytes(192..193) }, Punct { char: '=', spacing: Alone, span: #0 bytes(193..194) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: nums, span: #0 bytes(225..229) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "if", span: #0 bytes(244..246) }, Ident { ident: "i", span: #0 bytes(247..248) }, Punct { ch: '>', spacing: Joint, span: #0 bytes(249..250) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(250..251) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(252..253) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "total", span: #0 bytes(272..277) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(278..279) }, Ident { ident: "total", span: #0 bytes(280..285) }, Punct { ch: '+', spacing: Alone, span: #0 bytes(286..287) }, Ident { ident: "num", span: #0 bytes(288..291) }], span: #0 bytes(254..305) }], span: #0 bytes(230..315) }, Ident { sym: return, span: #0 bytes(324..330) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'nums' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: i, span: #0 bytes(247..248) }, Punct { char: '>', spacing: Joint, span: #0 bytes(249..250) }, Punct { char: '=', spacing: Alone, span: #0 bytes(250..251) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'i' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(272..277) }, Punct { char: '=', spacing: Alone, span: #0 bytes(278..279) }, Ident { sym: total, span: #0 bytes(280..285) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(280..285) }, Punct { char: '+', spacing: Alone, span: #0 bytes(286..287) }, Ident { sym: num, span: #0 bytes(288..291) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: num, span: #0 bytes(288..291) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'num' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(331..336) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goComplexExtractParts [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: F64 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(317..318) }, Punct { char: ':', spacing: Joint, span: #0 bytes(319..320) }, Punct { char: '=', spacing: Alone, span: #0 bytes(320..321) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: complex, span: #0 bytes(322..329) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Float, symbol: "3.0", suffix: None, span: #0 bytes(330..333) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(333..334) }, Literal { kind: Float, symbol: "4.0", suffix: None, span: #0 bytes(335..338) }], span: #0 bytes(329..339) }, Ident { sym: r, span: #0 bytes(348..349) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'complex' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=complex [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: real, span: #0 bytes(353..357) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "c", span: #0 bytes(358..359) }], span: #0 bytes(357..360) }, Ident { sym: i, span: #0 bytes(369..370) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'real' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=real [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(358..359) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: imag, span: #0 bytes(374..378) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "c", span: #0 bytes(379..380) }], span: #0 bytes(378..381) }, Ident { sym: return, span: #0 bytes(390..396) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'imag' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=imag [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(379..380) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: r, span: #0 bytes(397..398) }, Punct { char: '+', spacing: Alone, span: #0 bytes(399..400) }, Ident { sym: i, span: #0 bytes(401..402) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'r' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: i, span: #0 bytes(401..402) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'i' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goReplace [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(716..723) }, Punct { char: '.', spacing: Alone, span: #0 bytes(723..724) }, Ident { sym: Replace, span: #0 bytes(724..731) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goReplaceAll [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(828..835) }, Punct { char: '.', spacing: Alone, span: #0 bytes(835..836) }, Ident { sym: ReplaceAll, span: #0 bytes(836..846) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goHasPrefix [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Bool }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(916..923) }, Punct { char: '.', spacing: Alone, span: #0 bytes(923..924) }, Ident { sym: HasPrefix, span: #0 bytes(924..933) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goHasSuffix [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Bool }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1010..1017) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1017..1018) }, Ident { sym: HasSuffix, span: #0 bytes(1018..1027) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goContains [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Bool }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1103..1110) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1110..1111) }, Ident { sym: Contains, span: #0 bytes(1111..1119) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goJoin [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1193..1200) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1200..1201) }, Ident { sym: Join, span: #0 bytes(1201..1205) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSplit [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: StringTy }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1280..1287) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1287..1288) }, Ident { sym: Split, span: #0 bytes(1288..1293) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goIndex [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1355..1362) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1362..1363) }, Ident { sym: Index, span: #0 bytes(1363..1368) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTrim [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1442..1449) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1449..1450) }, Ident { sym: Trim, span: #0 bytes(1450..1454) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goToUpper [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: strings, span: #0 bytes(1525..1532) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1532..1533) }, Ident { sym: ToUpper, span: #0 bytes(1533..1540) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'strings' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goStructReturn [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Unknown("Point") }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goMakeMap [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Map(HirType { kind: StringTy }, HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: make, span: #0 bytes(1109..1113) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "map", span: #0 bytes(1114..1117) }, Group { delimiter: Bracket, stream: TokenStream [Ident { ident: "string", span: #0 bytes(1118..1124) }], span: #0 bytes(1117..1125) }, Ident { ident: "int", span: #0 bytes(1125..1128) }], span: #0 bytes(1113..1129) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'make' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=make [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: main [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(979..980) }, Punct { char: ':', spacing: Joint, span: #0 bytes(981..982) }, Punct { char: '=', spacing: Alone, span: #0 bytes(982..983) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goTimeNow [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I64 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: time, span: #0 bytes(1775..1779) }, Punct { char: '.', spacing: Alone, span: #0 bytes(1779..1780) }, Ident { sym: Now, span: #0 bytes(1780..1783) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'time' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goComplexArithmetic [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: F64 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(531..532) }, Punct { char: ':', spacing: Joint, span: #0 bytes(533..534) }, Punct { char: '=', spacing: Alone, span: #0 bytes(534..535) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: complex, span: #0 bytes(536..543) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Float, symbol: "1.0", suffix: None, span: #0 bytes(544..547) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(547..548) }, Literal { kind: Float, symbol: "2.0", suffix: None, span: #0 bytes(549..552) }], span: #0 bytes(543..553) }, Ident { sym: b, span: #0 bytes(562..563) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'complex' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=complex [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: complex, span: #0 bytes(567..574) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Float, symbol: "3.0", suffix: None, span: #0 bytes(575..578) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(578..579) }, Literal { kind: Float, symbol: "4.0", suffix: None, span: #0 bytes(580..583) }], span: #0 bytes(574..584) }, Ident { sym: c, span: #0 bytes(593..594) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'complex' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=complex [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(598..599) }, Punct { char: '+', spacing: Alone, span: #0 bytes(600..601) }, Ident { sym: b, span: #0 bytes(602..603) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(602..603) }, Ident { sym: return, span: #0 bytes(612..618) }, Ident { sym: real, span: #0 bytes(619..623) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: real, span: #0 bytes(619..623) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "c", span: #0 bytes(624..625) }], span: #0 bytes(623..626) }, Punct { char: '+', spacing: Alone, span: #0 bytes(627..628) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'real' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=real [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(624..625) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: imag, span: #0 bytes(629..633) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "c", span: #0 bytes(634..635) }], span: #0 bytes(633..636) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'imag' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=imag [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(634..635) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unused imports: `Complex128` and `Complex64` [INFO] [stdout] --> gourd-macro/tests/complex_builtin_test.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use gourd::prelude::{Complex64, Complex128}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goNestedStructs [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Unknown("Outer") }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goComplexBasic` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/complex_builtin_test.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | func goComplexBasic() Complex128 { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_complex_basic` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goComplexExtractParts` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/complex_builtin_test.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | func goComplexExtractParts() float64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_complex_extract_parts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goComplexArithmetic` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/complex_builtin_test.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | func goComplexArithmetic() float64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_complex_arithmetic` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goShorthand [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=true [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=true [INFO] [stderr] [DEBUG] Parsing grouped params [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "a", span: #0 bytes(6718..6719) }, HirType { kind: I32 }), (Ident { ident: "b", span: #0 bytes(6721..6722) }, HirType { kind: I32 }), (Ident { ident: "c", span: #0 bytes(6724..6725) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: a, span: #0 bytes(6752..6753) }, Punct { char: '+', spacing: Alone, span: #0 bytes(6754..6755) }, Ident { sym: b, span: #0 bytes(6756..6757) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'a' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: b, span: #0 bytes(6756..6757) }, Punct { char: '+', spacing: Alone, span: #0 bytes(6758..6759) }, Ident { sym: c, span: #0 bytes(6760..6761) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'b' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: c, span: #0 bytes(6760..6761) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'c' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: hello [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unused import: `std::convert::From` [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: main [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(781..782) }, Punct { char: ':', spacing: Joint, span: #0 bytes(783..784) }, Punct { char: '=', spacing: Alone, span: #0 bytes(784..785) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goCount [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: nums [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "nums", span: #0 bytes(476..480) }, HirType { kind: SliceRef(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: count, span: #0 bytes(503..508) }, Punct { char: ':', spacing: Joint, span: #0 bytes(509..510) }, Punct { char: '=', spacing: Alone, span: #0 bytes(510..511) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'count' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: len, span: #0 bytes(512..515) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "nums", span: #0 bytes(516..520) }], span: #0 bytes(515..521) }, Ident { sym: return, span: #0 bytes(530..536) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'len' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=len [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: nums, span: #0 bytes(516..520) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'nums' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: count, span: #0 bytes(537..542) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'count' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goStructInLet [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: p, span: #0 bytes(1465..1466) }, Punct { char: ':', spacing: Joint, span: #0 bytes(1467..1468) }, Punct { char: '=', spacing: Alone, span: #0 bytes(1468..1469) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'p' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goReplace` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | func goReplace() string { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_replace` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stdout] warning: function `goReplaceAll` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | func goReplaceAll() string { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_replace_all` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stdout] warning: function `goHasPrefix` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | func goHasPrefix() bool { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_has_prefix` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: main [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: add, span: #0 bytes(501..504) }, Punct { char: ':', spacing: Joint, span: #0 bytes(505..506) }, Punct { char: '=', spacing: Alone, span: #0 bytes(506..507) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'add' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: x [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: x, span: #0 bytes(540..541) }, Punct { char: '+', spacing: Alone, span: #0 bytes(542..543) }, Ident { sym: y, span: #0 bytes(544..545) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'x' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: y, span: #0 bytes(544..545) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'y' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: add, span: #0 bytes(567..570) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Integer, symbol: "1", suffix: None, span: #0 bytes(571..572) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(572..573) }, Literal { kind: Integer, symbol: "2", suffix: None, span: #0 bytes(574..575) }], span: #0 bytes(570..576) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'add' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=add [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goHasSuffix` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 33 | func goHasSuffix() bool { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_has_suffix` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goContains` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | func goContains() bool { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `go_contains` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goJoin` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:41:10 [INFO] [stdout] | [INFO] [stdout] 41 | func goJoin() string { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `go_join` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSplit` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | func goSplit() []string { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `go_split` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goIndex` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | func goIndex() int { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `go_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTrim` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 53 | func goTrim() string { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `go_trim` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goToUpper` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | func goToUpper() string { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_to_upper` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goTimeNow` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/package_functions.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | func goTimeNow() int64 { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_time_now` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stdout] warning: struct `Point` is never constructed [INFO] [stdout] --> gourd-macro/tests/struct_literals.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Point { pub x: i32, pub y: i32 } [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stdout] warning: struct `Outer` is never constructed [INFO] [stdout] --> gourd-macro/tests/struct_literals.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct Outer { pub inner: Inner } [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stdout] warning: struct `Inner` is never constructed [INFO] [stdout] --> gourd-macro/tests/struct_literals.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | struct Inner { pub x: i32 } [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stdout] warning: function `goStructReturn` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/struct_literals.rs:19:14 [INFO] [stdout] | [INFO] [stdout] 19 | func goStructReturn() Point { return Point{x: 1, y: 2} } [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_struct_return` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Parsed function name: goMakeSlice [INFO] [stdout] warning: function `goNestedStructs` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/struct_literals.rs:38:14 [INFO] [stdout] | [INFO] [stdout] 38 | func goNestedStructs() Outer { return Outer{inner: Inner{x: 1}} } [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_nested_structs` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stdout] warning: function `goStructInLet` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/struct_literals.rs:45:14 [INFO] [stdout] | [INFO] [stdout] 45 | func goStructInLet() string { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_struct_in_let` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: make, span: #0 bytes(1285..1289) }, Group { delimiter: Parenthesis, stream: TokenStream [Group { delimiter: Bracket, stream: TokenStream [], span: #0 bytes(1290..1292) }, Ident { ident: "int", span: #0 bytes(1292..1295) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(1295..1296) }, Literal { kind: Integer, symbol: "5", suffix: None, span: #0 bytes(1297..1298) }], span: #0 bytes(1289..1299) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'make' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=make [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goMakeChannel` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/make_builtin.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | func goMakeChannel() chan int { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_make_channel` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goMakeBufferedChannel` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/make_builtin.rs:25:14 [INFO] [stdout] | [INFO] [stdout] 25 | func goMakeBufferedChannel() chan int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_make_buffered_channel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goMakeStringChannel` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/make_builtin.rs:35:14 [INFO] [stdout] | [INFO] [stdout] 35 | func goMakeStringChannel() chan string { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_make_string_channel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goMakeMap` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/make_builtin.rs:45:14 [INFO] [stdout] | [INFO] [stdout] 45 | func goMakeMap() map[string]int { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `go_make_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goMakeSlice` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/make_builtin.rs:55:14 [INFO] [stdout] | [INFO] [stdout] 55 | func goMakeSlice() []int { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_make_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goFilter [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: min [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "min", span: #0 bytes(687..690) }, HirType { kind: I32 }), (Ident { ident: "nums", span: #0 bytes(696..700) }, HirType { kind: SliceRef(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(723..728) }, Punct { char: ':', spacing: Joint, span: #0 bytes(729..730) }, Punct { char: '=', spacing: Alone, span: #0 bytes(730..731) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: nums, span: #0 bytes(762..766) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "if", span: #0 bytes(781..783) }, Ident { ident: "num", span: #0 bytes(784..787) }, Punct { ch: '>', spacing: Alone, span: #0 bytes(788..789) }, Ident { ident: "min", span: #0 bytes(790..793) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "total", span: #0 bytes(812..817) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(818..819) }, Ident { ident: "total", span: #0 bytes(820..825) }, Punct { ch: '+', spacing: Alone, span: #0 bytes(826..827) }, Ident { ident: "num", span: #0 bytes(828..831) }], span: #0 bytes(794..845) }], span: #0 bytes(767..855) }, Ident { sym: return, span: #0 bytes(864..870) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'nums' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: num, span: #0 bytes(784..787) }, Punct { char: '>', spacing: Alone, span: #0 bytes(788..789) }, Ident { sym: min, span: #0 bytes(790..793) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'num' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: min, span: #0 bytes(790..793) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "total", span: #0 bytes(812..817) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(818..819) }, Ident { ident: "total", span: #0 bytes(820..825) }, Punct { ch: '+', spacing: Alone, span: #0 bytes(826..827) }, Ident { ident: "num", span: #0 bytes(828..831) }], span: #0 bytes(794..845) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'min' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(812..817) }, Punct { char: '=', spacing: Alone, span: #0 bytes(818..819) }, Ident { sym: total, span: #0 bytes(820..825) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(820..825) }, Punct { char: '+', spacing: Alone, span: #0 bytes(826..827) }, Ident { sym: num, span: #0 bytes(828..831) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: num, span: #0 bytes(828..831) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'num' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: total, span: #0 bytes(871..876) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'total' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goPanicMsg [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: panic, span: #0 bytes(305..310) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Str, symbol: "something went wrong", suffix: None, span: #0 bytes(311..333) }], span: #0 bytes(310..334) }, Ident { sym: return, span: #0 bytes(343..349) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: main [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(213..214) }, Punct { char: ':', spacing: Joint, span: #0 bytes(215..216) }, Punct { char: '=', spacing: Alone, span: #0 bytes(216..217) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: f, span: #0 bytes(262..263) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: #0 bytes(263..265) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'f' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=f [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=true [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goSum` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_variadic.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | func goSum(nums ...int) int { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_sum` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goCount` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_variadic.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | func goCount(nums ...int) int { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `go_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goFilter` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_variadic.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | func goFilter(min int, nums ...int) int { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `go_filter` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goNewPoint [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Unknown("Point") }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: new, span: #0 bytes(338..341) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Point", span: #0 bytes(342..347) }], span: #0 bytes(341..348) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'new' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=new [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: Point, span: #0 bytes(342..347) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'Point' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: hello [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSliceLiteral [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goPanicEmpty [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: panic, span: #0 bytes(437..442) }, Group { delimiter: Parenthesis, stream: TokenStream [], span: #0 bytes(442..444) }, Ident { sym: return, span: #0 bytes(453..459) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goNewWithDefault [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: p, span: #0 bytes(501..502) }, Punct { char: ':', spacing: Joint, span: #0 bytes(503..504) }, Punct { char: '=', spacing: Alone, span: #0 bytes(504..505) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'p' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: new, span: #0 bytes(506..509) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "Point", span: #0 bytes(510..515) }], span: #0 bytes(509..516) }, Ident { sym: return, span: #0 bytes(529..535) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'new' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=new [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: Point, span: #0 bytes(510..515) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'Point' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: p, span: #0 bytes(536..537) }, Punct { char: '.', spacing: Alone, span: #0 bytes(537..538) }, Ident { sym: x, span: #0 bytes(538..539) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'p' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goNewInt [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: new, span: #0 bytes(686..689) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "int", span: #0 bytes(690..693) }], span: #0 bytes(689..694) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'new' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=new [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: int, span: #0 bytes(690..693) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'int' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> gourd-macro/tests/panic_builtin.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / go! { [INFO] [stdout] 12 | | func goPanicMsg() int { [INFO] [stdout] 13 | | panic("something went wrong") [INFO] [stdout] 14 | | return 0 [INFO] [stdout] 15 | | } [INFO] [stdout] 16 | | } [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_unreachable statement [INFO] [stdout] | any code following this expression is unreachable [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `go` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> gourd-macro/tests/panic_builtin.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | / go! { [INFO] [stdout] 20 | | func goPanicEmpty() int { [INFO] [stdout] 21 | | panic() [INFO] [stdout] 22 | | return 0 [INFO] [stdout] 23 | | } [INFO] [stdout] 24 | | } [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | |_unreachable statement [INFO] [stdout] | any code following this expression is unreachable [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `go` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stdout] warning: function `goPanicMsg` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/panic_builtin.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | func goPanicMsg() int { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `go_panic_msg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stdout] warning: function `goPanicEmpty` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/panic_builtin.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | func goPanicEmpty() int { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_panic_empty` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stdout] warning: function `goPanicOnError` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/panic_builtin.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | func goPanicOnError(n int) int { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_panic_on_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] Parsed function name: goPanicOnError [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: n [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: i32 [INFO] [stderr] [DEBUG] Converted type: i32 [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "n", span: #0 bytes(535..536) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(559..560) }, Punct { char: '<', spacing: Alone, span: #0 bytes(561..562) }, Literal { kind: Integer, symbol: "0", suffix: None, span: #0 bytes(563..564) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: panic, span: #0 bytes(579..584) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Str, symbol: "negative number not allowed", suffix: None, span: #0 bytes(585..614) }], span: #0 bytes(584..615) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: panic, span: #0 bytes(579..584) }, Group { delimiter: Parenthesis, stream: TokenStream [Literal { kind: Str, symbol: "negative number not allowed", suffix: None, span: #0 bytes(585..614) }], span: #0 bytes(584..615) }] [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: n, span: #0 bytes(641..642) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'n' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSelectDefault [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: ch [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "ch", span: #0 bytes(182..184) }, HirType { kind: Channel(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: select, span: #0 bytes(205..211) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "default", span: #0 bytes(226..233) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(233..234) }], span: #0 bytes(212..244) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'select' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSliceLiteral [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: Slice(HirType { kind: I32 }) }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goNewString [INFO] [stderr] [DEBUG] Parsed params: [] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: StringTy }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: new, span: #0 bytes(836..839) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "string", span: #0 bytes(840..846) }], span: #0 bytes(839..847) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'new' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=true, peek(Bracket)=false, has_paren_forked=true [INFO] [stderr] [DEBUG parse_hir_call] Paren branch for func=new [INFO] [stderr] [DEBUG parse_hir_call] args_content.is_empty=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: string, span: #0 bytes(840..846) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'string' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unused import: `std::convert::From` [INFO] [stdout] --> gourd-macro/tests/new_builtin.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::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: function `goAdd` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | func goAdd() int { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_add` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSum` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | func goSum(a int, b int) int { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_sum` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goAbs` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 34 | func goAbs(n int) int { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_abs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `isEven` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:71:10 [INFO] [stdout] | [INFO] [stdout] 71 | func isEven(n int) bool { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `is_even` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goIncr` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:128:10 [INFO] [stdout] | [INFO] [stdout] 128 | func goIncr() int { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `go_incr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goStr` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:230:10 [INFO] [stdout] | [INFO] [stdout] 230 | func goStr(bytes []byte) string { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `go_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goShorthand` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:248:10 [INFO] [stdout] | [INFO] [stdout] 248 | func goShorthand(a, b, c int) int { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_shorthand` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSliceLiteral` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/go_fn.rs:282:10 [INFO] [stdout] | [INFO] [stdout] 282 | func goSliceLiteral() []int { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_slice_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Point` is never constructed [INFO] [stdout] --> gourd-macro/tests/new_builtin.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goNewPoint` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/new_builtin.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | func goNewPoint() Point { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `go_new_point` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goNewWithDefault` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/new_builtin.rs:28:14 [INFO] [stdout] | [INFO] [stdout] 28 | func goNewWithDefault() int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_new_with_default` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goNewInt` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/new_builtin.rs:39:14 [INFO] [stdout] | [INFO] [stdout] 39 | func goNewInt() int { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `go_new_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goNewString` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/new_builtin.rs:49:14 [INFO] [stdout] | [INFO] [stdout] 49 | func goNewString() string { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `go_new_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSelectSend [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: ch [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "ch", span: #0 bytes(313..315) }, HirType { kind: Channel(HirType { kind: I32 }) }), (Ident { ident: "value", span: #0 bytes(326..331) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: select, span: #0 bytes(347..353) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "case", span: #0 bytes(368..372) }, Ident { ident: "ch", span: #0 bytes(373..375) }, Punct { ch: '<', spacing: Joint, span: #0 bytes(376..377) }, Punct { ch: '-', spacing: Alone, span: #0 bytes(377..378) }, Ident { ident: "value", span: #0 bytes(379..384) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(384..385) }], span: #0 bytes(354..395) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'select' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(373..375) }, Punct { char: '<', spacing: Joint, span: #0 bytes(376..377) }, Punct { char: '-', spacing: Alone, span: #0 bytes(377..378) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: value, span: #0 bytes(379..384) }, Punct { char: ':', spacing: Alone, span: #0 bytes(384..385) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'value' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goSelectSendWithDefault [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: ch [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "ch", span: #0 bytes(482..484) }, HirType { kind: Channel(HirType { kind: I32 }) }), (Ident { ident: "value", span: #0 bytes(495..500) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: select, span: #0 bytes(516..522) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "case", span: #0 bytes(537..541) }, Ident { ident: "ch", span: #0 bytes(542..544) }, Punct { ch: '<', spacing: Joint, span: #0 bytes(545..546) }, Punct { ch: '-', spacing: Alone, span: #0 bytes(546..547) }, Ident { ident: "value", span: #0 bytes(548..553) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(553..554) }, Ident { ident: "default", span: #0 bytes(567..574) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(574..575) }], span: #0 bytes(523..585) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'select' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(542..544) }, Punct { char: '<', spacing: Joint, span: #0 bytes(545..546) }, Punct { char: '-', spacing: Alone, span: #0 bytes(546..547) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: value, span: #0 bytes(548..553) }, Punct { char: ':', spacing: Alone, span: #0 bytes(553..554) }, Ident { sym: default, span: #0 bytes(567..574) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'value' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unused variable: `ch` [INFO] [stdout] --> gourd-macro/tests/select_builtin.rs:8:26 [INFO] [stdout] | [INFO] [stdout] 8 | func goSelectDefault(ch chan int) { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_ch` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSelectDefault` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/select_builtin.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | func goSelectDefault(ch chan int) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_select_default` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSelectSend` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/select_builtin.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | func goSelectSend(ch chan int, value int) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `go_select_send` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goSelectSendWithDefault` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/select_builtin.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | func goSelectSendWithDefault(ch chan int, value int) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_select_send_with_default` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goChannelSend [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: ch [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] Found comma, parsing second param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "ch", span: #0 bytes(434..436) }, HirType { kind: Channel(HirType { kind: I32 }) }), (Ident { ident: "value", span: #0 bytes(447..452) }, HirType { kind: I32 })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(472..474) }, Punct { char: '<', spacing: Joint, span: #0 bytes(475..476) }, Punct { char: '-', spacing: Alone, span: #0 bytes(476..477) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: value, span: #0 bytes(478..483) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'value' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(472..474) }, Punct { char: '<', spacing: Joint, span: #0 bytes(475..476) }, Punct { char: '-', spacing: Alone, span: #0 bytes(476..477) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: value, span: #0 bytes(478..483) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'value' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: unused import: `gourd::GoChannel` [INFO] [stdout] --> gourd-macro/tests/channel_ops.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use gourd::GoChannel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [DEBUG] input.peek(Ident)=true, trying Ident::parse_any [INFO] [stderr] [DEBUG] Ident::parse_any result = Ok("func") [INFO] [stderr] [DEBUG] After func: peek(Ident)=true, peek(Paren)=false [INFO] [stderr] [DEBUG] Checking function name: peek(Ident)=true [INFO] [stderr] [DEBUG] Parsed function name: goChannelEcho [INFO] [stderr] [DEBUG] parse_hir_param_group called [INFO] [stderr] [DEBUG] is_pure_group=false [INFO] [stderr] [DEBUG] is_mixed=false [INFO] [stderr] [DEBUG] is_pure_group=false, is_mixed=false [INFO] [stderr] [DEBUG] Parsing individual params [INFO] [stderr] [DEBUG] Parsing first name [INFO] [stderr] [DEBUG] First name: ch [INFO] [stderr] [DEBUG] Parsing first type [INFO] [stderr] [DEBUG] First type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Converted type: :: gourd :: GoChannel < i32 > [INFO] [stderr] [DEBUG] Parsing second name [INFO] [stderr] [DEBUG] No comma, single param [INFO] [stderr] [DEBUG] Parsed params: [(Ident { ident: "ch", span: #0 bytes(633..635) }, HirType { kind: Channel(HirType { kind: I32 }) })] [INFO] [stderr] [DEBUG] Parsing returns [INFO] [stderr] [DEBUG] Parsed returns: [HirType { kind: I32 }] [INFO] [stderr] [DEBUG] Parsing body [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(664..666) }, Punct { char: '<', spacing: Joint, span: #0 bytes(667..668) }, Punct { char: '-', spacing: Alone, span: #0 bytes(668..669) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_identifier] entering, first_tokens: [Ident { sym: ch, span: #0 bytes(694..696) }] [INFO] [stderr] [DEBUG parse_hir_identifier] calling parse_hir_postfix for 'ch' [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stderr] [DEBUG parse_hir_binary] entering postfix loop [INFO] [stderr] [DEBUG parse_hir_postfix] peek(Paren)=false, peek(Bracket)=false, has_paren_forked=false [INFO] [stdout] warning: function `goChannelRecv` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/channel_ops.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | func goChannelRecv(ch chan int) int { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_channel_recv` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goChannelSend` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/channel_ops.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | func goChannelSend(ch chan int, value int) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_channel_send` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `goChannelEcho` should have a snake case name [INFO] [stdout] --> gourd-macro/tests/channel_ops.rs:30:14 [INFO] [stdout] | [INFO] [stdout] 30 | func goChannelEcho(ch chan int) int { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `go_channel_echo` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 34s [INFO] running `Command { std: "docker" "inspect" "665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb", kill_on_drop: false }` [INFO] [stdout] 665e361d33e86cfcb686c53391d074d58d7eb4c5fe3e244f57d1fdfb42316ecb