[INFO] cloning repository https://github.com/hgzimmerman/HLWNPA [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hgzimmerman/HLWNPA" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhgzimmerman%2FHLWNPA"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhgzimmerman%2FHLWNPA'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 5fd0648e66968a0a625d1bc107791795e035eb88 [INFO] checking hgzimmerman/HLWNPA against try#e4dba30b9b475d8750370c4dfb49b6541990904d for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhgzimmerman%2FHLWNPA" "/workspace/builds/worker-3/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/hgzimmerman/HLWNPA on toolchain e4dba30b9b475d8750370c4dfb49b6541990904d [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/hgzimmerman/HLWNPA [INFO] finished tweaking git repo https://github.com/hgzimmerman/HLWNPA [INFO] tweaked toml for git repo https://github.com/hgzimmerman/HLWNPA written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/hgzimmerman/HLWNPA already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 710a9d083fe838589fc39d4813ca54a5c262c8495572b066305b4dfc3516d7cd [INFO] running `"docker" "start" "-a" "710a9d083fe838589fc39d4813ca54a5c262c8495572b066305b4dfc3516d7cd"` [INFO] [stderr] Checking libc v0.2.30 [INFO] [stderr] Checking unicode-width v0.1.4 [INFO] [stderr] Checking unicode-segmentation v1.2.0 [INFO] [stderr] Checking vec_map v0.8.0 [INFO] [stderr] Checking bitflags v0.9.1 [INFO] [stderr] Checking ansi_term v0.9.0 [INFO] [stderr] Checking strsim v0.6.0 [INFO] [stderr] Checking term_size v0.3.0 [INFO] [stderr] Checking rand v0.3.16 [INFO] [stderr] Checking memchr v1.0.1 [INFO] [stderr] Checking atty v0.2.2 [INFO] [stderr] Checking textwrap v0.7.0 [INFO] [stderr] Checking nom v3.2.0 [INFO] [stderr] Checking clap v2.26.0 [INFO] [stderr] Checking uuid v0.4.0 [INFO] [stderr] Checking hlwnpa v0.1.1 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/expressions/mod.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | /// Grab the righthand side [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/expressions/mod.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | /// Get an index into an array. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/expressions/mod.rs:67:1 [INFO] [stderr] | [INFO] [stderr] 67 | /// Get a field belonging to a struct [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/literal/array.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | /// Grab a list of literals delimited by [ ] and then check if their datatypes are the same [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/literal/array.rs:58:1 [INFO] [stderr] | [INFO] [stderr] 58 | /// Matches syntax like [0..10] to create an array with the first value of 0, and the last value of 10. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/literal/mod.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | /// put all literal types here [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | /// Any token that cannot directly recurse into itself (ie contain an expression as its first token) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | /// nor contains a keyword. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | /// [INFO] [stderr] | ^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | /// This is used in the sexpr parser, as anything that could parse an expression could blow up the [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | /// stack, and that parser isn't interested in evaluating assignments, function definitions, etc... [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/assignment.rs:34:1 [INFO] [stderr] | [INFO] [stderr] 34 | /// Used for assigning identifiers to types [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/assignment.rs:44:1 [INFO] [stderr] | [INFO] [stderr] 44 | /// Used for assigning identifiers to types [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/type_signature.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | /// _ts indicates that the parser combinator is a getting a type signature [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/function.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | /// Either a Type or an identifier that can be resolved to a Struct's Type [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/function.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | /// The function definition syntax should look like: fn fn_name(id: datatype, ...) -> return_type { expressions ...} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/body.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | ///Body that only accepts assignments in the form: a : 4 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/body.rs:47:1 [INFO] [stderr] | [INFO] [stderr] 47 | ///Body that only accepts assignments in the form: a : [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/body.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | /// Used for creating a struct's type. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/mod.rs:37:1 [INFO] [stderr] | [INFO] [stderr] 37 | ///Anything that generates an AST node. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused import: `lang_result::LangError` [INFO] [stderr] --> src/ast/mutability.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use lang_result::LangError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:268:21 [INFO] [stderr] | [INFO] [stderr] 268 | (Ok((Some(Operator::Invert), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:271:21 [INFO] [stderr] | [INFO] [stderr] 271 | (Ok((Some(Operator::Negate), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:274:21 [INFO] [stderr] | [INFO] [stderr] 274 | (Ok((Some(Operator::Increment), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:277:21 [INFO] [stderr] | [INFO] [stderr] 277 | (Ok((Some(Operator::Decrement), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:287:13 [INFO] [stderr] | [INFO] [stderr] 287 | / (Err( [INFO] [stderr] 288 | | "Ast isn't an supported when assigning precedence".to_string(), [INFO] [stderr] 289 | | )) [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 287 | Err( [INFO] [stderr] 288 | "Ast isn't an supported when assigning precedence".to_string(), [INFO] [stderr] 289 | ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/repl.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/repl.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `io` is imported redundantly [INFO] [stderr] --> src/repl.rs:79:9 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io; [INFO] [stderr] | ------- the item `io` is already imported here [INFO] [stderr] ... [INFO] [stderr] 79 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/expressions/mod.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | /// Grab the righthand side [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/expressions/mod.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | /// Get an index into an array. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/expressions/mod.rs:67:1 [INFO] [stderr] | [INFO] [stderr] 67 | /// Get a field belonging to a struct [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/literal/array.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | /// Grab a list of literals delimited by [ ] and then check if their datatypes are the same [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/literal/array.rs:58:1 [INFO] [stderr] | [INFO] [stderr] 58 | /// Matches syntax like [0..10] to create an array with the first value of 0, and the last value of 10. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/literal/mod.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | /// put all literal types here [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | /// Any token that cannot directly recurse into itself (ie contain an expression as its first token) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | /// nor contains a keyword. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | /// [INFO] [stderr] | ^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | /// This is used in the sexpr parser, as anything that could parse an expression could blow up the [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/utilities.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | /// stack, and that parser isn't interested in evaluating assignments, function definitions, etc... [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/assignment.rs:34:1 [INFO] [stderr] | [INFO] [stderr] 34 | /// Used for assigning identifiers to types [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/assignment.rs:44:1 [INFO] [stderr] | [INFO] [stderr] 44 | /// Used for assigning identifiers to types [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/type_signature.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | /// _ts indicates that the parser combinator is a getting a type signature [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/function.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | /// Either a Type or an identifier that can be resolved to a Struct's Type [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/function.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | /// The function definition syntax should look like: fn fn_name(id: datatype, ...) -> return_type { expressions ...} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/body.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | ///Body that only accepts assignments in the form: a : 4 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/body.rs:47:1 [INFO] [stderr] | [INFO] [stderr] 47 | ///Body that only accepts assignments in the form: a : [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/body.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | /// Used for creating a struct's type. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/parser/mod.rs:37:1 [INFO] [stderr] | [INFO] [stderr] 37 | ///Anything that generates an AST node. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused import: `ast` [INFO] [stderr] --> src/ast/type_info.rs:346:13 [INFO] [stderr] | [INFO] [stderr] 346 | use ast; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `lang_result::LangError` [INFO] [stderr] --> src/ast/mutability.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use lang_result::LangError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:268:21 [INFO] [stderr] | [INFO] [stderr] 268 | (Ok((Some(Operator::Invert), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:271:21 [INFO] [stderr] | [INFO] [stderr] 271 | (Ok((Some(Operator::Negate), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:274:21 [INFO] [stderr] | [INFO] [stderr] 274 | (Ok((Some(Operator::Increment), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:277:21 [INFO] [stderr] | [INFO] [stderr] 277 | (Ok((Some(Operator::Decrement), *lhs.clone(), None))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/parser/expressions/mod.rs:287:13 [INFO] [stderr] | [INFO] [stderr] 287 | / (Err( [INFO] [stderr] 288 | | "Ast isn't an supported when assigning precedence".to_string(), [INFO] [stderr] 289 | | )) [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 287 | Err( [INFO] [stderr] 288 | "Ast isn't an supported when assigning precedence".to_string(), [INFO] [stderr] 289 | ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/repl.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/repl.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `io` is imported redundantly [INFO] [stderr] --> src/repl.rs:79:9 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io; [INFO] [stderr] | ------- the item `io` is already imported here [INFO] [stderr] ... [INFO] [stderr] 79 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/include.rs:20:35 [INFO] [stderr] | [INFO] [stderr] 20 | reason: e.description().to_string(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/include.rs:40:27 [INFO] [stderr] | [INFO] [stderr] 40 | reason: e.description().to_string(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/abstract_syntax_tree.rs:559:32 [INFO] [stderr] | [INFO] [stderr] 559 | Datatype::StructType { ref identifier, ref type_information } => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `type_info` [INFO] [stderr] --> src/ast/abstract_syntax_tree.rs:685:45 [INFO] [stderr] | [INFO] [stderr] 685 | ... ref type_info [INFO] [stderr] | ^^^^^^^^^^^^^ help: try ignoring the field: `type_info: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/abstract_syntax_tree.rs:753:67 [INFO] [stderr] | [INFO] [stderr] 753 | ... if let &Datatype::StructType{ ref identifier, ref type_information } = datatype { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/type_info.rs:54:71 [INFO] [stderr] | [INFO] [stderr] 54 | ... if let SExpression::TypeAssignment{ref identifier, ref type_info} = *s_expression { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `type_information` [INFO] [stderr] --> src/ast/type_info.rs:77:47 [INFO] [stderr] | [INFO] [stderr] 77 | Datatype::StructType{ identifier, type_information} => TypeInfo::StructType{ identifier: identifier }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `type_information: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `parameters` [INFO] [stderr] --> src/ast/type_info.rs:129:32 [INFO] [stderr] | [INFO] [stderr] 129 | TypeInfo::Function{ref parameters, ref return_type} => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `parameters: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `return_type` [INFO] [stderr] --> src/ast/type_info.rs:129:48 [INFO] [stderr] | [INFO] [stderr] 129 | TypeInfo::Function{ref parameters, ref return_type} => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ast` [INFO] [stderr] --> src/ast/mutability.rs:54:61 [INFO] [stderr] | [INFO] [stderr] 54 | SExpression::Assignment{ref identifier, ref ast} => { // a := 5 [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `ast: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ast` [INFO] [stderr] --> src/ast/mutability.rs:68:68 [INFO] [stderr] | [INFO] [stderr] 68 | SExpression::ConstDeclaration {ref identifier, ref ast} => { // const a := 5 [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `ast: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ast` [INFO] [stderr] --> src/ast/mutability.rs:80:72 [INFO] [stderr] | [INFO] [stderr] 80 | SExpression::VariableDeclaration { ref identifier, ref ast } => { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `ast: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `function_datatype` [INFO] [stderr] --> src/ast/mutability.rs:97:68 [INFO] [stderr] | [INFO] [stderr] 97 | SExpression::DeclareFunction { ref identifier, ref function_datatype } => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `function_datatype: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `struct_type_info` [INFO] [stderr] --> src/ast/mutability.rs:109:70 [INFO] [stderr] | [INFO] [stderr] 109 | SExpression::StructDeclaration { ref identifier, ref struct_type_info} => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `struct_type_info: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_type` [INFO] [stderr] --> src/ast/type_checking.rs:130:61 [INFO] [stderr] | [INFO] [stderr] 130 | ... Mutability::Mutable(ref lhs_type) =... [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_type` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_mutability` [INFO] [stderr] --> src/ast/type_checking.rs:166:38 [INFO] [stderr] | [INFO] [stderr] 166 | ... Some(lhs_mutability) =... [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_mutability` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_mutability` [INFO] [stderr] --> src/ast/type_checking.rs:197:38 [INFO] [stderr] | [INFO] [stderr] 197 | ... Some(lhs_mutability) =... [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_mutability` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_mutability` [INFO] [stderr] --> src/ast/type_checking.rs:226:38 [INFO] [stderr] | [INFO] [stderr] 226 | ... Some(lhs_mutability) =... [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_mutability` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/ast/type_checking.rs:308:25 [INFO] [stderr] | [INFO] [stderr] 308 | ref index [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `index: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `struct_datatype` [INFO] [stderr] --> src/ast/type_checking.rs:386:25 [INFO] [stderr] | [INFO] [stderr] 386 | ref struct_datatype [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `struct_datatype: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `map` [INFO] [stderr] --> src/ast/type_checking.rs:390:58 [INFO] [stderr] | [INFO] [stderr] 390 | ... if let TypeInfo::Struct{ ref map } = existing_struct_type.clone().get_type() { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `map: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/type_checking.rs:399:25 [INFO] [stderr] | [INFO] [stderr] 399 | ref identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `field_identifier` [INFO] [stderr] --> src/ast/type_checking.rs:400:25 [INFO] [stderr] | [INFO] [stderr] 400 | ref field_identifier [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `field_identifier: _` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ast/type_checking.rs:58:32 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn check_types( &self, mut type_store: &mut TypeStore ) -> MutabilityResult { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/repl.rs:78:82 [INFO] [stderr] | [INFO] [stderr] 78 | pub fn repl(mut map: &mut VariableStore, mut mutability_map: &mut MutabilityMap, mut type_store: &mut TypeStore) { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/include.rs:20:35 [INFO] [stderr] | [INFO] [stderr] 20 | reason: e.description().to_string(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/include.rs:40:27 [INFO] [stderr] | [INFO] [stderr] 40 | reason: e.description().to_string(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ExpectedDataTypeInfo` [INFO] [stderr] --> src/ast/lang_result.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | ExpectedDataTypeInfo, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InvalidSyntax` [INFO] [stderr] --> src/ast/lang_result.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | InvalidSyntax, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InvalidSyntaxFailedToParse` [INFO] [stderr] --> src/ast/lang_result.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | InvalidSyntaxFailedToParse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `MutabilityResult` [INFO] [stderr] --> src/ast/mutability.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub type MutabilityResult = Result<(), MutabilityError>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `VariableDoesNotExist` [INFO] [stderr] --> src/ast/type_checking.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | VariableDoesNotExist, // Remove? [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_type_from_ast` [INFO] [stderr] --> src/parser/type_signature.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | fn get_type_from_ast(ast: Ast) -> TypeInfo { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 60 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/abstract_syntax_tree.rs:559:32 [INFO] [stderr] | [INFO] [stderr] 559 | Datatype::StructType { ref identifier, ref type_information } => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `type_info` [INFO] [stderr] --> src/ast/abstract_syntax_tree.rs:685:45 [INFO] [stderr] | [INFO] [stderr] 685 | ... ref type_info [INFO] [stderr] | ^^^^^^^^^^^^^ help: try ignoring the field: `type_info: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/abstract_syntax_tree.rs:753:67 [INFO] [stderr] | [INFO] [stderr] 753 | ... if let &Datatype::StructType{ ref identifier, ref type_information } = datatype { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/type_info.rs:54:71 [INFO] [stderr] | [INFO] [stderr] 54 | ... if let SExpression::TypeAssignment{ref identifier, ref type_info} = *s_expression { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `type_information` [INFO] [stderr] --> src/ast/type_info.rs:77:47 [INFO] [stderr] | [INFO] [stderr] 77 | Datatype::StructType{ identifier, type_information} => TypeInfo::StructType{ identifier: identifier }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `type_information: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `parameters` [INFO] [stderr] --> src/ast/type_info.rs:129:32 [INFO] [stderr] | [INFO] [stderr] 129 | TypeInfo::Function{ref parameters, ref return_type} => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `parameters: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `return_type` [INFO] [stderr] --> src/ast/type_info.rs:129:48 [INFO] [stderr] | [INFO] [stderr] 129 | TypeInfo::Function{ref parameters, ref return_type} => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try ignoring the field: `return_type: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ast` [INFO] [stderr] --> src/ast/mutability.rs:54:61 [INFO] [stderr] | [INFO] [stderr] 54 | SExpression::Assignment{ref identifier, ref ast} => { // a := 5 [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `ast: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ast` [INFO] [stderr] --> src/ast/mutability.rs:68:68 [INFO] [stderr] | [INFO] [stderr] 68 | SExpression::ConstDeclaration {ref identifier, ref ast} => { // const a := 5 [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `ast: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ast` [INFO] [stderr] --> src/ast/mutability.rs:80:72 [INFO] [stderr] | [INFO] [stderr] 80 | SExpression::VariableDeclaration { ref identifier, ref ast } => { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `ast: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `function_datatype` [INFO] [stderr] --> src/ast/mutability.rs:97:68 [INFO] [stderr] | [INFO] [stderr] 97 | SExpression::DeclareFunction { ref identifier, ref function_datatype } => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `function_datatype: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `struct_type_info` [INFO] [stderr] --> src/ast/mutability.rs:109:70 [INFO] [stderr] | [INFO] [stderr] 109 | SExpression::StructDeclaration { ref identifier, ref struct_type_info} => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `struct_type_info: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_type` [INFO] [stderr] --> src/ast/type_checking.rs:130:61 [INFO] [stderr] | [INFO] [stderr] 130 | ... Mutability::Mutable(ref lhs_type) =... [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_type` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_mutability` [INFO] [stderr] --> src/ast/type_checking.rs:166:38 [INFO] [stderr] | [INFO] [stderr] 166 | ... Some(lhs_mutability) =... [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_mutability` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_mutability` [INFO] [stderr] --> src/ast/type_checking.rs:197:38 [INFO] [stderr] | [INFO] [stderr] 197 | ... Some(lhs_mutability) =... [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_mutability` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lhs_mutability` [INFO] [stderr] --> src/ast/type_checking.rs:226:38 [INFO] [stderr] | [INFO] [stderr] 226 | ... Some(lhs_mutability) =... [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lhs_mutability` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/ast/type_checking.rs:308:25 [INFO] [stderr] | [INFO] [stderr] 308 | ref index [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `index: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `struct_datatype` [INFO] [stderr] --> src/ast/type_checking.rs:386:25 [INFO] [stderr] | [INFO] [stderr] 386 | ref struct_datatype [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `struct_datatype: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `map` [INFO] [stderr] --> src/ast/type_checking.rs:390:58 [INFO] [stderr] | [INFO] [stderr] 390 | ... if let TypeInfo::Struct{ ref map } = existing_struct_type.clone().get_type() { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `map: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier` [INFO] [stderr] --> src/ast/type_checking.rs:399:25 [INFO] [stderr] | [INFO] [stderr] 399 | ref identifier, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try ignoring the field: `identifier: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `field_identifier` [INFO] [stderr] --> src/ast/type_checking.rs:400:25 [INFO] [stderr] | [INFO] [stderr] 400 | ref field_identifier [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `field_identifier: _` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ast/type_checking.rs:58:32 [INFO] [stderr] | [INFO] [stderr] 58 | pub fn check_types( &self, mut type_store: &mut TypeStore ) -> MutabilityResult { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/repl.rs:78:82 [INFO] [stderr] | [INFO] [stderr] 78 | pub fn repl(mut map: &mut VariableStore, mut mutability_map: &mut MutabilityMap, mut type_store: &mut TypeStore) { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ExpectedDataTypeInfo` [INFO] [stderr] --> src/ast/lang_result.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | ExpectedDataTypeInfo, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InvalidSyntax` [INFO] [stderr] --> src/ast/lang_result.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | InvalidSyntax, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InvalidSyntaxFailedToParse` [INFO] [stderr] --> src/ast/lang_result.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | InvalidSyntaxFailedToParse, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `MutabilityResult` [INFO] [stderr] --> src/ast/mutability.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub type MutabilityResult = Result<(), MutabilityError>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `VariableDoesNotExist` [INFO] [stderr] --> src/ast/type_checking.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | VariableDoesNotExist, // Remove? [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_type_from_ast` [INFO] [stderr] --> src/parser/type_signature.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | fn get_type_from_ast(ast: Ast) -> TypeInfo { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 61 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 17.24s [INFO] running `"docker" "inspect" "710a9d083fe838589fc39d4813ca54a5c262c8495572b066305b4dfc3516d7cd"` [INFO] running `"docker" "rm" "-f" "710a9d083fe838589fc39d4813ca54a5c262c8495572b066305b4dfc3516d7cd"` [INFO] [stdout] 710a9d083fe838589fc39d4813ca54a5c262c8495572b066305b4dfc3516d7cd