[INFO] updating cached repository https://github.com/alberrttt/something [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 733ed499cec6585b7a228e76b52f0105f2e0868f [INFO] checking alberrttt/something/733ed499cec6585b7a228e76b52f0105f2e0868f against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falberrttt%2Fsomething" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/alberrttt/something on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/alberrttt/something [INFO] finished tweaking git repo https://github.com/alberrttt/something [INFO] tweaked toml for git repo https://github.com/alberrttt/something written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/alberrttt/something 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 75afb0296ea9a6c896d2beab811cdc8224b00e5829b405dd4fadbb8b678a6113 [INFO] running `Command { std: "docker" "start" "-a" "75afb0296ea9a6c896d2beab811cdc8224b00e5829b405dd4fadbb8b678a6113", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "75afb0296ea9a6c896d2beab811cdc8224b00e5829b405dd4fadbb8b678a6113", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "75afb0296ea9a6c896d2beab811cdc8224b00e5829b405dd4fadbb8b678a6113", kill_on_drop: false }` [INFO] [stdout] 75afb0296ea9a6c896d2beab811cdc8224b00e5829b405dd4fadbb8b678a6113 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 534b04bc6f002696852248cbed4bff33da9a9418cd3eada5e3f5d3df32eef6e7 [INFO] running `Command { std: "docker" "start" "-a" "534b04bc6f002696852248cbed4bff33da9a9418cd3eada5e3f5d3df32eef6e7", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Compiling proc-macro2 v1.0.66 [INFO] [stderr] Compiling rustix v0.38.8 [INFO] [stderr] Checking bitflags v2.4.0 [INFO] [stderr] Compiling unicode-ident v1.0.11 [INFO] [stderr] Checking linux-raw-sys v0.4.5 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Checking unicode-width v0.1.10 [INFO] [stderr] Checking anstyle v1.0.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking anstyle-query v1.0.0 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Checking clap_lex v0.5.0 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Checking anstyle-parse v0.2.1 [INFO] [stderr] Checking pad v0.1.6 [INFO] [stderr] Checking quote v1.0.33 [INFO] [stderr] Checking syn v2.0.29 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking colored v2.0.4 [INFO] [stderr] Checking anstream v0.3.2 [INFO] [stderr] Checking something-common v0.1.0 (/opt/rustwide/workdir/something-common) [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> something-common/src/msg.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{default, fmt::Display}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> something-common/src/msg.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{default, fmt::Display}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-common/src/msg.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | writeln!(f); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::write` which comes from the expansion of the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-common/src/msg.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | writeln!(f); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::write` which comes from the expansion of the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking clap_builder v4.3.23 [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking nix v0.26.2 [INFO] [stderr] Checking ctrlc v3.4.0 [INFO] [stderr] Checking something-dev-tools v0.1.0 (/opt/rustwide/workdir/something-dev-tools) [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-dev-tools/src/parse_tokens.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 9 | / match derive.data { [INFO] [stdout] 10 | | Data::Enum(enum_data) => { [INFO] [stdout] 11 | | let name = derive.ident; [INFO] [stdout] ... | [INFO] [stdout] 101 | | Data::Union(_enum_data) => panic!("unions unsupported"), [INFO] [stdout] 102 | | } [INFO] [stdout] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 103 | panic!() [INFO] [stdout] | ^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::panic::panic_2021` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-dev-tools/src/parse_tokens.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 9 | / match derive.data { [INFO] [stdout] 10 | | Data::Enum(enum_data) => { [INFO] [stdout] 11 | | let name = derive.ident; [INFO] [stdout] ... | [INFO] [stdout] 101 | | Data::Union(_enum_data) => panic!("unions unsupported"), [INFO] [stdout] 102 | | } [INFO] [stdout] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 103 | panic!() [INFO] [stdout] | ^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::panic::panic_2021` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> something-dev-tools/src/item_name.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct IdentName(pub syn::Ident, pub Token![,], pub syn::LitStr); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `item_name` is never used [INFO] [stdout] --> something-dev-tools/src/item_name.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn item_name(parser: proc_macro::TokenStream) -> proc_macro::TokenStream { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> something-dev-tools/src/item_name.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct IdentName(pub syn::Ident, pub Token![,], pub syn::LitStr); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `item_name` is never used [INFO] [stdout] --> something-dev-tools/src/item_name.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn item_name(parser: proc_macro::TokenStream) -> proc_macro::TokenStream { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling casey v0.4.0 [INFO] [stderr] Compiling clap_derive v4.3.12 [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-dev-tools/src/parse_tokens.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 9 | / match derive.data { [INFO] [stdout] 10 | | Data::Enum(enum_data) => { [INFO] [stdout] 11 | | let name = derive.ident; [INFO] [stdout] ... | [INFO] [stdout] 101 | | Data::Union(_enum_data) => panic!("unions unsupported"), [INFO] [stdout] 102 | | } [INFO] [stdout] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 103 | panic!() [INFO] [stdout] | ^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::panic::panic_2021` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> something-dev-tools/src/item_name.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct IdentName(pub syn::Ident, pub Token![,], pub syn::LitStr); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `item_name` is never used [INFO] [stdout] --> something-dev-tools/src/item_name.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub fn item_name(parser: proc_macro::TokenStream) -> proc_macro::TokenStream { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking clap v4.3.23 [INFO] [stderr] Checking something-ast v0.1.0 (/opt/rustwide/workdir/something-ast) [INFO] [stdout] warning: unused import: `TokenStream` [INFO] [stdout] --> something-ast/src/ast/mod.rs:3:85 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::tokenizer::{self, list::List, token::Token, traits::AppendTokens, Parse, TokenStream}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_common::devprintln` [INFO] [stdout] --> something-ast/src/ast/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use something_common::devprintln; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colored::Colorize` [INFO] [stdout] --> something-ast/src/ast/attribute.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | use colored::Colorize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display` and `Formatter` [INFO] [stdout] --> something-ast/src/ast/attribute.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | use std::fmt::{Display, Formatter}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `__attribute::*` [INFO] [stdout] --> something-ast/src/ast/attribute.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub use __attribute::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `$crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | use $crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/function/mod.rs:23:55 [INFO] [stdout] | [INFO] [stdout] 23 | let (function_declaration, _): (Declaration, _) = ast!( [INFO] [stdout] | _______________________________________________________- [INFO] [stdout] 24 | | "fn x(number x, number y) { [INFO] [stdout] 25 | | let z: number = y + x; [INFO] [stdout] 26 | | } -> void" [INFO] [stdout] 27 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `__functiondeclaration::*` [INFO] [stdout] --> something-ast/src/ast/declaration/function/mod.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | pub use __functiondeclaration::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenStream` [INFO] [stdout] --> something-ast/src/ast/mod.rs:3:85 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::tokenizer::{self, list::List, token::Token, traits::AppendTokens, Parse, TokenStream}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::format` [INFO] [stdout] --> something-ast/src/ast/declaration/var.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::format; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/declaration/var.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_common::devprintln` [INFO] [stdout] --> something-ast/src/ast/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use something_common::devprintln; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colored::Colorize` [INFO] [stdout] --> something-ast/src/ast/attribute.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | use colored::Colorize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `$crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | use $crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/var.rs:88:51 [INFO] [stdout] | [INFO] [stdout] 88 | let (var_decl, _): (VariableDeclaration, _) = crate::ast!("let a = 1;"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `crate::ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display` and `Formatter` [INFO] [stdout] --> something-ast/src/ast/attribute.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | use std::fmt::{Display, Formatter}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `__attribute::*` [INFO] [stdout] --> something-ast/src/ast/attribute.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub use __attribute::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `__functiondeclaration::*` [INFO] [stdout] --> something-ast/src/ast/declaration/function/mod.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | pub use __functiondeclaration::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `$crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | use $crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/path.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | let (path, _): (Path, _) = ast!("standard:io:print"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::format` [INFO] [stdout] --> something-ast/src/ast/declaration/var.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::format; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tokenizer::prelude::*` [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | use crate::tokenizer::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/declaration/var.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `$crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | use $crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/omited_trailing.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | let (ast, _): (OmitTrailing, _) = ast!("a, b, c,"); [INFO] [stdout] | ---------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::error::Error` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use clap::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `$crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | use $crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/mod.rs:139:51 [INFO] [stdout] | [INFO] [stdout] 139 | let (_, _): (Punctuated, _) = ast!("a,b,c"); [INFO] [stdout] | ------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Macros::Tkn` [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use Macros::Tkn; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::parser::Parser` [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::parser::Parser; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `$crate::prelude::*` [INFO] [stdout] --> something-ast/src/ast/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | use $crate::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/statement/use_stmt.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | let (_, _): (Use, _) = ast!("use standard:io:print"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast` [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | use crate::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::path::var` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::ast::path::var; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tokenizer::prelude::*` [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | use crate::tokenizer::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parser` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:4:42 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{ast::expression::Expression, parser}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ast` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{ast, tokenizer::prelude::*}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ParseTokens` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:5:38 [INFO] [stdout] | [INFO] [stdout] 5 | use something_dev_tools::{item_name, ParseTokens, ParseTokensDisplay}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::error::Error` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use clap::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Macros::Tkn` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use Macros::Tkn; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> something-ast/src/error/mod.rs:83:5 [INFO] [stdout] | [INFO] [stdout] 83 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> something-ast/src/error/mod.rs:85:16 [INFO] [stdout] | [INFO] [stdout] 85 | use std::{any, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::path::var` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::ast::path::var; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parser` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:4:42 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{ast::expression::Expression, parser}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ParseTokens` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:5:38 [INFO] [stdout] | [INFO] [stdout] 5 | use something_dev_tools::{item_name, ParseTokens, ParseTokensDisplay}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> something-ast/src/error/mod.rs:83:5 [INFO] [stdout] | [INFO] [stdout] 83 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> something-ast/src/error/mod.rs:85:16 [INFO] [stdout] | [INFO] [stdout] 85 | use std::{any, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast` [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | use crate::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::prelude::*` [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | use crate::ast::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `idents` should have an upper camel case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | type idents = (Ident, Ident, Ident, Ident, Ident, Ident); [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Idents` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast` [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | use crate::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::prelude::*` [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | use crate::ast::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tokenizer::prelude::*` [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | use crate::tokenizer::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules [INFO] [stdout] --> something-ast/src/tokenizer/mod.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `#[macro_use]` only has an effect on `extern crate` and modules [INFO] [stdout] --> something-ast/src/tokenizer/mod.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-ast/src/ast/mod.rs:86:24 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, Clone, ParseTokens, ParseTokensDisplay)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unreachable expression [INFO] [stdout] | any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::panic::panic_2021` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-ast/src/ast/mod.rs:86:24 [INFO] [stdout] | [INFO] [stdout] 86 | #[derive(Debug, Clone, ParseTokens, ParseTokensDisplay)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | unreachable expression [INFO] [stdout] | any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::panic::panic_2021` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 73 | todo!(); [INFO] [stdout] | ------- any code following this expression is unreachable [INFO] [stdout] 74 | let mut vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 73 | todo!(); [INFO] [stdout] | ------- any code following this expression is unreachable [INFO] [stdout] 74 | let mut vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-ast/src/tokenizer/token.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 64 | / match self.peek() { [INFO] [stdout] 65 | | Ok(token) => { [INFO] [stdout] 66 | | if *token == target { [INFO] [stdout] 67 | | let token = token.clone(); [INFO] [stdout] ... | [INFO] [stdout] 75 | | // but, if the self.peek() errors, it usually means that we're at the end of the tokens [INFO] [stdout] 76 | | } [INFO] [stdout] | |_________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 77 | todo!() [INFO] [stdout] | ^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-ast/src/tokenizer/token.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 64 | / match self.peek() { [INFO] [stdout] 65 | | Ok(token) => { [INFO] [stdout] 66 | | if *token == target { [INFO] [stdout] 67 | | let token = token.clone(); [INFO] [stdout] ... | [INFO] [stdout] 75 | | // but, if the self.peek() errors, it usually means that we're at the end of the tokens [INFO] [stdout] 76 | | } [INFO] [stdout] | |_________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 77 | todo!() [INFO] [stdout] | ^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 42 | Ok(variant) => return Ok(Node::Statement(variant)), [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 43 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 42 | Ok(variant) => return Ok(Node::Statement(variant)), [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 43 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/function/mod.rs:23:55 [INFO] [stdout] | [INFO] [stdout] 23 | let (function_declaration, _): (Declaration, _) = ast!( [INFO] [stdout] | _______________________________________________________- [INFO] [stdout] 24 | | "fn x(number x, number y) { [INFO] [stdout] 25 | | let z: number = y + x; [INFO] [stdout] 26 | | } -> void" [INFO] [stdout] 27 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 109 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/function/mod.rs:23:55 [INFO] [stdout] | [INFO] [stdout] 23 | let (function_declaration, _): (Declaration, _) = ast!( [INFO] [stdout] | _______________________________________________________- [INFO] [stdout] 24 | | "fn x(number x, number y) { [INFO] [stdout] 25 | | let z: number = y + x; [INFO] [stdout] 26 | | } -> void" [INFO] [stdout] 27 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/function/mod.rs:23:55 [INFO] [stdout] | [INFO] [stdout] 23 | let (function_declaration, _): (Declaration, _) = ast!( [INFO] [stdout] | _______________________________________________________- [INFO] [stdout] 24 | | "fn x(number x, number y) { [INFO] [stdout] 25 | | let z: number = y + x; [INFO] [stdout] 26 | | } -> void" [INFO] [stdout] 27 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 34 | Ok(tmp) => return Ok(Self::Var(tmp)), [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] 35 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 34 | Ok(tmp) => return Ok(Self::Var(tmp)), [INFO] [stdout] | ------- matches some of the same values [INFO] [stdout] 35 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/var.rs:88:51 [INFO] [stdout] | [INFO] [stdout] 88 | let (var_decl, _): (VariableDeclaration, _) = crate::ast!("let a = 1;"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 109 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/var.rs:88:51 [INFO] [stdout] | [INFO] [stdout] 88 | let (var_decl, _): (VariableDeclaration, _) = crate::ast!("let a = 1;"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `crate::ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 26 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 27 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/var.rs:88:51 [INFO] [stdout] | [INFO] [stdout] 88 | let (var_decl, _): (VariableDeclaration, _) = crate::ast!("let a = 1;"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `crate::ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 26 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 27 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 26 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 27 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 26 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 27 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 26 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 27 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 26 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 27 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 71 | Ok(ok) => return Ok(Expression::Call(ok)), [INFO] [stdout] | ^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:72:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 71 | Ok(ok) => return Ok(Expression::Call(ok)), [INFO] [stdout] 72 | Err(err) => return Err(err), [INFO] [stdout] | ^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:70:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:71:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 71 | Ok(ok) => return Ok(Expression::Call(ok)), [INFO] [stdout] | ^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:72:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 71 | Ok(ok) => return Ok(Expression::Call(ok)), [INFO] [stdout] 72 | Err(err) => return Err(err), [INFO] [stdout] | ^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:70:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parser` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:72:36 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn parse_error_on_trailing(parser: &mut crate::parser::Parser) -> ParseResult { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 107 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 108 | Err(err) => return Err(err), [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 126 | Ok(punct) => Some(punct), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 127 | Err(err) => None, [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:127:25 [INFO] [stdout] | [INFO] [stdout] 127 | Err(err) => None, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/path.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | let (path, _): (Path, _) = ast!("standard:io:print"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 109 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/path.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | let (path, _): (Path, _) = ast!("standard:io:print"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | Err(err) => {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-ast/src/error/mod.rs:26:22 [INFO] [stdout] | [INFO] [stdout] 26 | Some(backtrace) => { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-ast/src/error/mod.rs:45:24 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn EndOfTokens(backtrace: Backtrace) -> Self { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> something-ast/src/error/mod.rs:101:18 [INFO] [stdout] | [INFO] [stdout] 101 | Some(b) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/path.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | let (path, _): (Path, _) = ast!("standard:io:print"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> something-ast/src/parser.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | for error in &self.parse_errors { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 56 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 57 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 61 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fmter` [INFO] [stdout] --> something-ast/src/parser.rs:67:28 [INFO] [stdout] | [INFO] [stdout] 67 | fn write_errors(&self, fmter: &mut Formatter) -> std::fmt::Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_fmter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/omited_trailing.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | let (ast, _): (OmitTrailing, _) = ast!("a, b, c,"); [INFO] [stdout] | ---------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 109 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/omited_trailing.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | let (ast, _): (OmitTrailing, _) = ast!("a, b, c,"); [INFO] [stdout] | ---------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/omited_trailing.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | let (ast, _): (OmitTrailing, _) = ast!("a, b, c,"); [INFO] [stdout] | ---------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parser` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:72:36 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn parse_error_on_trailing(parser: &mut crate::parser::Parser) -> ParseResult { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 107 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 108 | Err(err) => return Err(err), [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 126 | Ok(punct) => Some(punct), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 127 | Err(err) => None, [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:127:25 [INFO] [stdout] | [INFO] [stdout] 127 | Err(err) => None, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/mod.rs:139:51 [INFO] [stdout] | [INFO] [stdout] 139 | let (_, _): (Punctuated, _) = ast!("a,b,c"); [INFO] [stdout] | ------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 109 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/mod.rs:139:51 [INFO] [stdout] | [INFO] [stdout] 139 | let (_, _): (Punctuated, _) = ast!("a,b,c"); [INFO] [stdout] | ------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/mod.rs:139:51 [INFO] [stdout] | [INFO] [stdout] 139 | let (_, _): (Punctuated, _) = ast!("a,b,c"); [INFO] [stdout] | ------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/statement/use_stmt.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | let (_, _): (Use, _) = ast!("use standard:io:print"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 108 | Ok(value) => (value, tokens), [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] 109 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/statement/use_stmt.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | let (_, _): (Use, _) = ast!("use standard:io:print"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/statement/use_stmt.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | let (_, _): (Use, _) = ast!("use standard:io:print"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> something-ast/src/ast/statement/mod.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | Err(err) => {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-ast/src/error/mod.rs:26:22 [INFO] [stdout] | [INFO] [stdout] 26 | Some(backtrace) => { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-ast/src/error/mod.rs:45:24 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn EndOfTokens(backtrace: Backtrace) -> Self { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> something-ast/src/error/mod.rs:101:18 [INFO] [stdout] | [INFO] [stdout] 101 | Some(b) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> something-ast/src/parser.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | for error in &self.parse_errors { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fmter` [INFO] [stdout] --> something-ast/src/parser.rs:67:28 [INFO] [stdout] | [INFO] [stdout] 67 | fn write_errors(&self, fmter: &mut Formatter) -> std::fmt::Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_fmter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `parser` [INFO] [stdout] --> something-ast/src/parser.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | let mut parser = Parser::new(file_name, source); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> something-ast/src/parser.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | let mut parser = Parser::new(file_name, source); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 116 | impl Binary { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 117 | fn new(left: Expression, op: Operator, right: Expression) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `write_errors` is never used [INFO] [stdout] --> something-ast/src/parser.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 66 | impl<'a> ErrorHandler<'a> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] 67 | fn write_errors(&self, fmter: &mut Formatter) -> std::fmt::Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/ast/mod.rs:46:25 [INFO] [stdout] | [INFO] [stdout] 46 | parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 46 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/ast/mod.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 49 | parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 49 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/ast/declaration/var.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | ... parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 39 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:70:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `F` should have a snake case name [INFO] [stdout] --> something-ast/src/parser.rs:47:31 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn step(&mut self, F: impl FnOnce(&mut Self) -> ParseResult) -> ParseResult { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/tokenizer/list.rs:66:21 [INFO] [stdout] | [INFO] [stdout] 66 | parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 66 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/tokenizer/token.rs:68:21 [INFO] [stdout] | [INFO] [stdout] 68 | self.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 68 | let _ = self.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Macros` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/token.rs:242:17 [INFO] [stdout] | [INFO] [stdout] 242 | pub mod Macros { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `macros` [INFO] [stdout] ... [INFO] [stdout] 427 | / DefineTokens!( [INFO] [stdout] 428 | | [If, Fn, Let, Return, While, For, Use], [INFO] [stdout] 429 | | [ [INFO] [stdout] 430 | | [==] => EqualEqual, [INFO] [stdout] ... | [INFO] [stdout] 456 | | ] [INFO] [stdout] 457 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `DefineTokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:19 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:22 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `D` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:28 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:31 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `F` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:19 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:22 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:25 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `D` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:31 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:22 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:25 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `D` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:28 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case: `d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:68:19 [INFO] [stdout] | [INFO] [stdout] 68 | tuple_parse_impl!(A, B, C); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:68:22 [INFO] [stdout] | [INFO] [stdout] 68 | tuple_parse_impl!(A, B, C); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:68:25 [INFO] [stdout] | [INFO] [stdout] 68 | tuple_parse_impl!(A, B, C); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | tuple_parse_impl!(A, B); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:69:22 [INFO] [stdout] | [INFO] [stdout] 69 | tuple_parse_impl!(A, B); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 90 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking something-frontend v0.1.0 (/opt/rustwide/workdir/something-frontend) [INFO] [stderr] Checking something-typecheck v0.1.0 (/opt/rustwide/workdir/something-semantic) [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 116 | impl Binary { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 117 | fn new(left: Expression, op: Operator, right: Expression) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `write_errors` is never used [INFO] [stdout] --> something-ast/src/parser.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 66 | impl<'a> ErrorHandler<'a> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] 67 | fn write_errors(&self, fmter: &mut Formatter) -> std::fmt::Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/ast/mod.rs:46:25 [INFO] [stdout] | [INFO] [stdout] 46 | parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 46 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/ast/mod.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 49 | parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 49 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/declaration/mod.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/function/mod.rs:23:55 [INFO] [stdout] | [INFO] [stdout] 23 | let (function_declaration, _): (Declaration, _) = ast!( [INFO] [stdout] | _______________________________________________________- [INFO] [stdout] 24 | | "fn x(number x, number y) { [INFO] [stdout] 25 | | let z: number = y + x; [INFO] [stdout] 26 | | } -> void" [INFO] [stdout] 27 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/ast/declaration/var.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | ... parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 39 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/declaration/var.rs:88:51 [INFO] [stdout] | [INFO] [stdout] 88 | let (var_decl, _): (VariableDeclaration, _) = crate::ast!("let a = 1;"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `crate::ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] ... [INFO] [stdout] 108 | gen_impl!(Paren, LeftParen); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] ... [INFO] [stdout] 109 | gen_impl!(Brace, LeftBrace); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/delimiter.rs:30:33 [INFO] [stdout] | [INFO] [stdout] 30 | Recoverable => { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] ... [INFO] [stdout] 110 | gen_impl!(Bracket, LeftBracket); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `gen_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/expression/mod.rs:70:21 [INFO] [stdout] | [INFO] [stdout] 70 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/path.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | let (path, _): (Path, _) = ast!("standard:io:print"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | Recoverable => break, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/punctuated/mod.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/mod.rs:139:51 [INFO] [stdout] | [INFO] [stdout] 139 | let (_, _): (Punctuated, _) = ast!("a,b,c"); [INFO] [stdout] | ------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/punctuated/omited_trailing.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/punctuated/omited_trailing.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | let (ast, _): (OmitTrailing, _) = ast!("a, b, c,"); [INFO] [stdout] | ---------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast` [INFO] [stdout] --> something-frontend/src/tests/to_tokens.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast::prelude::*` [INFO] [stdout] --> something-frontend/src/tests/to_tokens.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::ast::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/src/ast/mod.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] ::: something-ast/src/ast/statement/use_stmt.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | let (_, _): (Use, _) = ast!("use standard:io:print"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `ast` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tokenizer::prelude::*` [INFO] [stdout] --> something-frontend/src/tests/to_tokens.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::tokenizer::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `F` should have a snake case name [INFO] [stdout] --> something-ast/src/parser.rs:47:31 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn step(&mut self, F: impl FnOnce(&mut Self) -> ParseResult) -> ParseResult { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenStream` [INFO] [stdout] --> something-ast/./bin/mod.rs:6:55 [INFO] [stdout] | [INFO] [stdout] 6 | use something_ast::tokenizer::{Parse, ParsingDisplay, TokenStream}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/tokenizer/list.rs:66:21 [INFO] [stdout] | [INFO] [stdout] 66 | parser.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 66 | let _ = parser.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/src/tokenizer/token.rs:68:21 [INFO] [stdout] | [INFO] [stdout] 68 | self.advance(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 68 | let _ = self.advance(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Macros` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/token.rs:242:17 [INFO] [stdout] | [INFO] [stdout] 242 | pub mod Macros { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `macros` [INFO] [stdout] ... [INFO] [stdout] 427 | / DefineTokens!( [INFO] [stdout] 428 | | [If, Fn, Let, Return, While, For, Use], [INFO] [stdout] 429 | | [ [INFO] [stdout] 430 | | [==] => EqualEqual, [INFO] [stdout] ... | [INFO] [stdout] 456 | | ] [INFO] [stdout] 457 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `DefineTokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:19 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:22 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `D` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:28 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:31 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `F` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | tuple_parse_impl!(A, B, C, D, E, F); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:19 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:22 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:25 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> something-ast/./bin/repl.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 28 | / match parser.step(|parser| match FunctionDeclaration::parse(parser) { [INFO] [stdout] 29 | | Ok(ok) => Ok(Repl::Fn(ok)), [INFO] [stdout] 30 | | Err(err) => Err(err), [INFO] [stdout] 31 | | }) { [INFO] [stdout] 32 | | Ok(ok) => return Ok(ok), [INFO] [stdout] 33 | | Err(err) => return Err(err), [INFO] [stdout] 34 | | }; [INFO] [stdout] | |_________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 35 | devprintln!("parsing node now"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `devprintln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ast` [INFO] [stdout] --> something-frontend/src/tests/to_tokens.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `D` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:66:31 [INFO] [stdout] | [INFO] [stdout] 66 | tuple_parse_impl!(A, B, C, D, E); [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:22 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:25 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `D` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:67:28 [INFO] [stdout] | [INFO] [stdout] 67 | tuple_parse_impl!(A, B, C, D); [INFO] [stdout] | ^ help: convert the identifier to snake case: `d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:68:19 [INFO] [stdout] | [INFO] [stdout] 68 | tuple_parse_impl!(A, B, C); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:68:22 [INFO] [stdout] | [INFO] [stdout] 68 | tuple_parse_impl!(A, B, C); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `C` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:68:25 [INFO] [stdout] | [INFO] [stdout] 68 | tuple_parse_impl!(A, B, C); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `A` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | tuple_parse_impl!(A, B); [INFO] [stdout] | ^ help: convert the identifier to snake case: `a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `B` should have a snake case name [INFO] [stdout] --> something-ast/src/tokenizer/traits.rs:69:22 [INFO] [stdout] | [INFO] [stdout] 69 | tuple_parse_impl!(A, B); [INFO] [stdout] | ^ help: convert the identifier to snake case: `b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> something-ast/./bin/repl.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | fmt::{Debug, Display}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> something-semantic/src/lib.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | collections::{HashMap, HashSet}, [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `prelude::devprintln` [INFO] [stdout] --> something-semantic/src/lib.rs:8:38 [INFO] [stdout] | [INFO] [stdout] 8 | use something_ast::{ast::prelude::*, prelude::devprintln}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SymbolTable` [INFO] [stdout] --> something-semantic/src/lib.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | use symbol::{FnSig, Symbol, SymbolTable, Type}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InferType` [INFO] [stdout] --> something-semantic/src/lib.rs:10:36 [INFO] [stdout] | [INFO] [stdout] 10 | use type_infer::{InferLiteralType, InferType}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/./bin/repl.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 24 | Recoverable => {} [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 25 | Err(err) => return Err(err), [INFO] [stdout] | ^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/./bin/repl.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> something-semantic/src/error.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 161 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> something-semantic/src/error.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> something-semantic/src/error.rs:165:16 [INFO] [stdout] | [INFO] [stdout] 165 | use std::{any, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `err_write` [INFO] [stdout] --> something-semantic/src/error.rs:176:14 [INFO] [stdout] | [INFO] [stdout] 176 | macro_rules! err_write { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Backtrace`, `UnsafeCell`, `collections::HashSet`, `marker::PhantomData`, and `self` [INFO] [stdout] --> something-semantic/src/scopes.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | backtrace::{self, Backtrace}, [INFO] [stdout] | ^^^^ ^^^^^^^^^ [INFO] [stdout] 3 | cell::{RefCell, UnsafeCell}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 4 | collections::HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | fmt::Debug, [INFO] [stdout] 6 | marker::PhantomData, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Declaration` and `ToTokens` [INFO] [stdout] --> something-semantic/src/scopes.rs:12:19 [INFO] [stdout] | [INFO] [stdout] 12 | prelude::{Declaration, Expression, FunctionDeclaration}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | traits::{AppendTokens, ToTokens}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InferType` [INFO] [stdout] --> something-semantic/src/scopes.rs:27:36 [INFO] [stdout] | [INFO] [stdout] 27 | type_infer::{InferLiteralType, InferType}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_common::devprintln` [INFO] [stdout] --> something-semantic/src/scopes.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use something_common::devprintln; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_ast::tokenizer::prelude::Ident` [INFO] [stdout] --> something-semantic/src/symbol.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use something_ast::tokenizer::prelude::Ident; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `expression` [INFO] [stdout] --> something-semantic/src/type_check.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | expression, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_ast::tokenizer::Parse` [INFO] [stdout] --> something-semantic/src/control_flow/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use something_ast::tokenizer::Parse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ast::prelude::Declaration` and `tokenizer::prelude::List` [INFO] [stdout] --> something-semantic/src/tests.rs:1:21 [INFO] [stdout] | [INFO] [stdout] 1 | use something_ast::{ast::prelude::Declaration, tokenizer::prelude::List}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> something-semantic/src/lib.rs:129:1 [INFO] [stdout] | [INFO] [stdout] 129 | mod tests; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_common::devprintln` [INFO] [stdout] --> something-semantic/src/tests.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use something_common::devprintln; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> something-semantic/src/lib.rs:129:1 [INFO] [stdout] | [INFO] [stdout] 129 | mod tests; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::Module` [INFO] [stdout] --> something-semantic/src/tests.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::Module; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> something-semantic/src/lib.rs:129:1 [INFO] [stdout] | [INFO] [stdout] 129 | mod tests; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 28 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 29 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap` and `HashSet` [INFO] [stdout] --> something-semantic/src/lib.rs:3:19 [INFO] [stdout] | [INFO] [stdout] 3 | collections::{HashMap, HashSet}, [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SymbolTable` [INFO] [stdout] --> something-semantic/src/lib.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | use symbol::{FnSig, Symbol, SymbolTable, Type}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InferType` [INFO] [stdout] --> something-semantic/src/lib.rs:10:36 [INFO] [stdout] | [INFO] [stdout] 10 | use type_infer::{InferLiteralType, InferType}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> something-semantic/src/error.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 161 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> something-semantic/src/error.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> something-semantic/src/error.rs:165:16 [INFO] [stdout] | [INFO] [stdout] 165 | use std::{any, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `err_write` [INFO] [stdout] --> something-semantic/src/error.rs:176:14 [INFO] [stdout] | [INFO] [stdout] 176 | macro_rules! err_write { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Backtrace`, `UnsafeCell`, `collections::HashSet`, `marker::PhantomData`, and `self` [INFO] [stdout] --> something-semantic/src/scopes.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | backtrace::{self, Backtrace}, [INFO] [stdout] | ^^^^ ^^^^^^^^^ [INFO] [stdout] 3 | cell::{RefCell, UnsafeCell}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 4 | collections::HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | fmt::Debug, [INFO] [stdout] 6 | marker::PhantomData, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Declaration` and `ToTokens` [INFO] [stdout] --> something-semantic/src/scopes.rs:12:19 [INFO] [stdout] | [INFO] [stdout] 12 | prelude::{Declaration, Expression, FunctionDeclaration}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | traits::{AppendTokens, ToTokens}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InferType` [INFO] [stdout] --> something-semantic/src/scopes.rs:27:36 [INFO] [stdout] | [INFO] [stdout] 27 | type_infer::{InferLiteralType, InferType}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TokenStream` [INFO] [stdout] --> something-ast/./bin/mod.rs:6:55 [INFO] [stdout] | [INFO] [stdout] 6 | use something_ast::tokenizer::{Parse, ParsingDisplay, TokenStream}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_common::devprintln` [INFO] [stdout] --> something-semantic/src/scopes.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use something_common::devprintln; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_ast::tokenizer::prelude::Ident` [INFO] [stdout] --> something-semantic/src/symbol.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use something_ast::tokenizer::prelude::Ident; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `expression` [INFO] [stdout] --> something-semantic/src/type_check.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | expression, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/./bin/repl.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tokenizer` [INFO] [stdout] --> something-ast/tests/mod.rs:60:48 [INFO] [stdout] | [INFO] [stdout] 60 | use something_ast::tokenizer::{prelude::*, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `something_ast::tokenizer::Parse` [INFO] [stdout] --> something-semantic/src/control_flow/mod.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use something_ast::tokenizer::Parse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> something-ast/./bin/repl.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 28 | / match parser.step(|parser| match FunctionDeclaration::parse(parser) { [INFO] [stdout] 29 | | Ok(ok) => Ok(Repl::Fn(ok)), [INFO] [stdout] 30 | | Err(err) => Err(err), [INFO] [stdout] 31 | | }) { [INFO] [stdout] 32 | | Ok(ok) => return Ok(ok), [INFO] [stdout] 33 | | Err(err) => return Err(err), [INFO] [stdout] 34 | | }; [INFO] [stdout] | |_________- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 35 | devprintln!("parsing node now"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `devprintln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 114 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> something-ast/./bin/repl.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | fmt::{Debug, Display}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> something-semantic/src/scopes.rs:88:29 [INFO] [stdout] | [INFO] [stdout] 87 | ... panic!(); [INFO] [stdout] | -------- any code following this expression is unreachable [INFO] [stdout] 88 | / ... return Err(TypeError::MismatchExpressionType( [INFO] [stdout] 89 | | ... param.clone(), [INFO] [stdout] 90 | | ... Some(param_ty), [INFO] [stdout] 91 | | ... arg_ty.clone(), [INFO] [stdout] 92 | | ... )); [INFO] [stdout] | |_________________________^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/./bin/repl.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 24 | Recoverable => {} [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 25 | Err(err) => return Err(err), [INFO] [stdout] | ^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/./bin/repl.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/tests/mod.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | dbg!(tokens.peek()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/tests/mod.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | dbg!(tokens.peek()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/tests/mod.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | dbg!(Expression::parse(&mut tokens)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/tests/mod.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | dbg!(tokens.peek()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/tests/mod.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | dbg!(Expression::parse(&mut tokens)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> something-ast/tests/mod.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | dbg!(tokens.peek()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-semantic/src/type_check.rs:123:22 [INFO] [stdout] | [INFO] [stdout] 123 | _ => return todo!(), [INFO] [stdout] | ^^^^^^^------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-semantic/src/error.rs:39:22 [INFO] [stdout] | [INFO] [stdout] 39 | Some(backtrace) => { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-semantic/src/error.rs:205:21 [INFO] [stdout] | [INFO] [stdout] 205 | if let Some(backtrace) = self.backtrace.as_ref() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> something-semantic/src/error.rs:210:18 [INFO] [stdout] | [INFO] [stdout] 210 | Some(b) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `right_start` [INFO] [stdout] --> something-semantic/src/error.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | let right_start = right_tkns.first().unwrap().span().start; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_right_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `operator_len` [INFO] [stdout] --> something-semantic/src/error.rs:283:21 [INFO] [stdout] | [INFO] [stdout] 283 | let operator_len = operator.token.span().length(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 28 | Ok(ok) => ok, [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] 29 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `missing` [INFO] [stdout] --> something-semantic/src/error.rs:404:36 [INFO] [stdout] | [INFO] [stdout] 404 | MissingReturnStatement(missing) => { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/./bin/mod.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-ast/./bin/repl.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | Recoverable => {} [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> something-semantic/src/error.rs:264:21 [INFO] [stdout] | [INFO] [stdout] 264 | let mut right_tkns = right.0.to_tokens(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `retur` [INFO] [stdout] --> something-semantic/src/scopes.rs:158:61 [INFO] [stdout] | [INFO] [stdout] 158 | } else if let Node::Statement(Statement::Return(retur)) = stmt { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_retur` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 53 | Ok(_) => return_stmt.1.infer_literal_type().unwrap_or(Type::Void), [INFO] [stdout] | ----- matches some of the same values [INFO] [stdout] 54 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-semantic/src/type_check.rs:123:17 [INFO] [stdout] | [INFO] [stdout] 123 | _ => return todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-semantic/src/type_check.rs:123:17 [INFO] [stdout] | [INFO] [stdout] 97 | Ok(expr) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 115 | Err(mut err) => { [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 123 | _ => return todo!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-semantic/src/type_check.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 148 | Recoverable => todo!(), [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 149 | Err(mut err) => { [INFO] [stdout] | ^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-semantic/src/type_check.rs:148:21 [INFO] [stdout] | [INFO] [stdout] 148 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `against` [INFO] [stdout] --> something-semantic/src/type_check.rs:90:45 [INFO] [stdout] | [INFO] [stdout] 90 | fn type_check(&self, scope: Self::With, against: Self::Against) -> Self::Output { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_against` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> something-semantic/src/type_infer.rs:43:36 [INFO] [stdout] | [INFO] [stdout] 43 | lit_impl::Inner::Float(n) => Ok(Type::Number), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> something-semantic/src/type_infer.rs:45:38 [INFO] [stdout] | [INFO] [stdout] 45 | lit_impl::Inner::Integer(i) => Ok(Type::Number), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol_type` [INFO] [stdout] --> something-semantic/src/lib.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let symbol_type = todo!(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `variable` [INFO] [stdout] --> something-semantic/src/lib.rs:100:48 [INFO] [stdout] | [INFO] [stdout] 100 | fn add_variable_to_symbol_table(&mut self, variable: &VariableDeclaration) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> something-semantic/src/scopes.rs:88:29 [INFO] [stdout] | [INFO] [stdout] 87 | ... panic!(); [INFO] [stdout] | -------- any code following this expression is unreachable [INFO] [stdout] 88 | / ... return Err(TypeError::MismatchExpressionType( [INFO] [stdout] 89 | | ... param.clone(), [INFO] [stdout] 90 | | ... Some(param_ty), [INFO] [stdout] 91 | | ... arg_ty.clone(), [INFO] [stdout] 92 | | ... )); [INFO] [stdout] | |_________________________^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FindSymbolHack` is never used [INFO] [stdout] --> something-semantic/src/lib.rs:121:7 [INFO] [stdout] | [INFO] [stdout] 121 | trait FindSymbolHack { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SurroundingTokensPayload` is never constructed [INFO] [stdout] --> something-semantic/src/error.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SurroundingTokensPayload { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SurroundingTokensPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> something-semantic/src/error.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl SurroundingTokensPayload { [INFO] [stdout] | ----------------------------- associated function in this implementation [INFO] [stdout] 21 | pub fn new(tokens: TokenStream, range: Range) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExpectedAst` is never constructed [INFO] [stdout] --> something-semantic/src/error.rs:167:12 [INFO] [stdout] | [INFO] [stdout] 167 | pub struct ExpectedAst { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpectedAst` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExpectedToken` is never constructed [INFO] [stdout] --> something-semantic/src/error.rs:171:12 [INFO] [stdout] | [INFO] [stdout] 171 | pub struct ExpectedToken { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpectedToken` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SymbolTable` is never constructed [INFO] [stdout] --> something-semantic/src/symbol.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct SymbolTable { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SymbolTable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `InferType` is never used [INFO] [stdout] --> something-semantic/src/type_infer.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait InferType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Continue`, `Break`, `Return`, and `Branch` are never constructed [INFO] [stdout] --> something-semantic/src/control_flow/mod.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Flow { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 6 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 7 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 9 | Branch(Branch), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Flow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ControlFlow` is never used [INFO] [stdout] --> something-semantic/src/control_flow/mod.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | trait ControlFlow { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-semantic/src/type_check.rs:148:21 [INFO] [stdout] | [INFO] [stdout] 148 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> something-semantic/src/type_check.rs:123:22 [INFO] [stdout] | [INFO] [stdout] 123 | _ => return todo!(), [INFO] [stdout] | ^^^^^^^------- [INFO] [stdout] | | | [INFO] [stdout] | | any code following this expression is unreachable [INFO] [stdout] | unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-semantic/src/error.rs:39:22 [INFO] [stdout] | [INFO] [stdout] 39 | Some(backtrace) => { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backtrace` [INFO] [stdout] --> something-semantic/src/error.rs:205:21 [INFO] [stdout] | [INFO] [stdout] 205 | if let Some(backtrace) = self.backtrace.as_ref() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backtrace` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> something-semantic/src/error.rs:210:18 [INFO] [stdout] | [INFO] [stdout] 210 | Some(b) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `right_start` [INFO] [stdout] --> something-semantic/src/error.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | let right_start = right_tkns.first().unwrap().span().start; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_right_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `operator_len` [INFO] [stdout] --> something-semantic/src/error.rs:283:21 [INFO] [stdout] | [INFO] [stdout] 283 | let operator_len = operator.token.span().length(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_operator_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `missing` [INFO] [stdout] --> something-semantic/src/error.rs:404:36 [INFO] [stdout] | [INFO] [stdout] 404 | MissingReturnStatement(missing) => { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> something-semantic/src/error.rs:264:21 [INFO] [stdout] | [INFO] [stdout] 264 | let mut right_tkns = right.0.to_tokens(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `retur` [INFO] [stdout] --> something-semantic/src/scopes.rs:158:61 [INFO] [stdout] | [INFO] [stdout] 158 | } else if let Node::Statement(Statement::Return(retur)) = stmt { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_retur` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 53 | Ok(_) => return_stmt.1.infer_literal_type().unwrap_or(Type::Void), [INFO] [stdout] | ----- matches some of the same values [INFO] [stdout] 54 | Err(err) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-semantic/src/type_check.rs:123:17 [INFO] [stdout] | [INFO] [stdout] 123 | _ => return todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> something-semantic/src/type_check.rs:123:17 [INFO] [stdout] | [INFO] [stdout] 97 | Ok(expr) => { [INFO] [stdout] | -------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 115 | Err(mut err) => { [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 123 | _ => return todo!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> something-semantic/src/type_check.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 148 | Recoverable => todo!(), [INFO] [stdout] | ----------- matches any value [INFO] [stdout] 149 | Err(mut err) => { [INFO] [stdout] | ^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Recoverable` [INFO] [stdout] --> something-semantic/src/type_check.rs:148:21 [INFO] [stdout] | [INFO] [stdout] 148 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `against` [INFO] [stdout] --> something-semantic/src/type_check.rs:90:45 [INFO] [stdout] | [INFO] [stdout] 90 | fn type_check(&self, scope: Self::With, against: Self::Against) -> Self::Output { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_against` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> something-semantic/src/type_infer.rs:43:36 [INFO] [stdout] | [INFO] [stdout] 43 | lit_impl::Inner::Float(n) => Ok(Type::Number), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> something-semantic/src/type_infer.rs:45:38 [INFO] [stdout] | [INFO] [stdout] 45 | lit_impl::Inner::Integer(i) => Ok(Type::Number), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `symbol_type` [INFO] [stdout] --> something-semantic/src/lib.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let symbol_type = todo!(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_symbol_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `variable` [INFO] [stdout] --> something-semantic/src/lib.rs:100:48 [INFO] [stdout] | [INFO] [stdout] 100 | fn add_variable_to_symbol_table(&mut self, variable: &VariableDeclaration) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `FindSymbolHack` is never used [INFO] [stdout] --> something-semantic/src/lib.rs:121:7 [INFO] [stdout] | [INFO] [stdout] 121 | trait FindSymbolHack { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SurroundingTokensPayload` is never constructed [INFO] [stdout] --> something-semantic/src/error.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SurroundingTokensPayload { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SurroundingTokensPayload` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> something-semantic/src/error.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl SurroundingTokensPayload { [INFO] [stdout] | ----------------------------- associated function in this implementation [INFO] [stdout] 21 | pub fn new(tokens: TokenStream, range: Range) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExpectedAst` is never constructed [INFO] [stdout] --> something-semantic/src/error.rs:167:12 [INFO] [stdout] | [INFO] [stdout] 167 | pub struct ExpectedAst { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpectedAst` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ExpectedToken` is never constructed [INFO] [stdout] --> something-semantic/src/error.rs:171:12 [INFO] [stdout] | [INFO] [stdout] 171 | pub struct ExpectedToken { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpectedToken` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SymbolTable` is never constructed [INFO] [stdout] --> something-semantic/src/symbol.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct SymbolTable { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SymbolTable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `InferType` is never used [INFO] [stdout] --> something-semantic/src/type_infer.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait InferType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Continue`, `Break`, `Return`, and `Branch` are never constructed [INFO] [stdout] --> something-semantic/src/control_flow/mod.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Flow { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 6 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 7 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 9 | Branch(Branch), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Flow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ControlFlow` is never used [INFO] [stdout] --> something-semantic/src/control_flow/mod.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | trait ControlFlow { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-semantic/src/type_check.rs:57:25 [INFO] [stdout] | [INFO] [stdout] 57 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Recoverable` should have a snake case name [INFO] [stdout] --> something-semantic/src/type_check.rs:148:21 [INFO] [stdout] | [INFO] [stdout] 148 | Recoverable => todo!(), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `recoverable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.94s [INFO] running `Command { std: "docker" "inspect" "534b04bc6f002696852248cbed4bff33da9a9418cd3eada5e3f5d3df32eef6e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "534b04bc6f002696852248cbed4bff33da9a9418cd3eada5e3f5d3df32eef6e7", kill_on_drop: false }` [INFO] [stdout] 534b04bc6f002696852248cbed4bff33da9a9418cd3eada5e3f5d3df32eef6e7