[INFO] cloning repository https://github.com/Viphor/POOP [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Viphor/POOP" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FViphor%2FPOOP", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FViphor%2FPOOP'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 03324cc9501734aeb63247bf5006fff99d9197eb [INFO] testing Viphor/POOP against 1.52.1 for beta-1.52-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FViphor%2FPOOP" "/workspace/builds/worker-5/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Viphor/POOP on toolchain 1.52.1 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.52.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Viphor/POOP [INFO] finished tweaking git repo https://github.com/Viphor/POOP [INFO] tweaked toml for git repo https://github.com/Viphor/POOP written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate git repo https://github.com/Viphor/POOP already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.52.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] b1a7fd93b9f604ff3784e2eae53c0eeac7c4bc7e30c2e18f52bc4d79fee8ea8a [INFO] running `Command { std: "docker" "start" "-a" "b1a7fd93b9f604ff3784e2eae53c0eeac7c4bc7e30c2e18f52bc4d79fee8ea8a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b1a7fd93b9f604ff3784e2eae53c0eeac7c4bc7e30c2e18f52bc4d79fee8ea8a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1a7fd93b9f604ff3784e2eae53c0eeac7c4bc7e30c2e18f52bc4d79fee8ea8a", kill_on_drop: false }` [INFO] [stdout] b1a7fd93b9f604ff3784e2eae53c0eeac7c4bc7e30c2e18f52bc4d79fee8ea8a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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=warn" "-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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cc737e41a7a8db3f48379afc70dfccbcf9a326943bfef0e752361389a9aac9cc [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "cc737e41a7a8db3f48379afc70dfccbcf9a326943bfef0e752361389a9aac9cc", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.3.2 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling regex-syntax v0.6.13 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling rustc-hash v1.0.1 [INFO] [stderr] Compiling backtrace-sys v0.1.32 [INFO] [stderr] Compiling backtrace v0.3.42 [INFO] [stderr] Compiling aho-corasick v0.7.8 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling regex v1.3.3 [INFO] [stderr] Compiling llvm-sys v100.0.1 [INFO] [stderr] Compiling logos-derive v0.10.0-rc2 [INFO] [stderr] Compiling logos v0.10.0-rc2 [INFO] [stderr] Compiling poop v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `if_expr` [INFO] [stdout] --> src/type_system/mod.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_if_expr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/type_system/mod.rs:108:25 [INFO] [stdout] | [INFO] [stdout] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `var` [INFO] [stdout] --> src/type_system/mod.rs:126:28 [INFO] [stdout] | [INFO] [stdout] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_var` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func_call` [INFO] [stdout] --> src/type_system/mod.rs:130:33 [INFO] [stdout] | [INFO] [stdout] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `statement` [INFO] [stdout] --> src/type_system/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | fn statement(&mut self, _statement: &Statement) -> Output { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `expression` [INFO] [stdout] --> src/type_system/mod.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | fn expression(&mut self, expr: &Expression) -> Output { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `if_expression` [INFO] [stdout] --> src/type_system/mod.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `block` [INFO] [stdout] --> src/type_system/mod.rs:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `value` [INFO] [stdout] --> src/type_system/mod.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | fn value(&mut self, value: &Value) -> Output { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `variable` [INFO] [stdout] --> src/type_system/mod.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `function_call` [INFO] [stdout] --> src/type_system/mod.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | pub mod error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/error.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct CodegenError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/error.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn new>(message: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/error.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn error>(message: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/error.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn message(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | pub mod function; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/function.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Function { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/function.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub module: Rc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/function.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub builder: LLVMBuilderRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/function.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub context: LLVMContextRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn new(codegen: &mut Codegen, function_type: Types, name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn call(&self, args: &mut [LLVMValueRef], name: &str) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn basic_block(&mut self, name: &str) -> LLVMBasicBlockRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn position_at_block_ref(&mut self, block_ref: LLVMBasicBlockRef) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn build_statement(&mut self, statement: &Statement) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn build_expression(&mut self, expr: &Expression) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:243:5 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn build_block(&mut self, block: &Block) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:250:5 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn build_if_expression(&mut self, if_expression: &IfExpression) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:287:5 [INFO] [stdout] | [INFO] [stdout] 287 | pub fn build(&mut self, builder: &dyn Fn(&mut Function)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:294:5 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn name(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 298 | pub fn assign(&mut self, var: &str, value: LLVMValueRef) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:302:5 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn var(&self, var: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:309:5 [INFO] [stdout] | [INFO] [stdout] 309 | pub fn value(&self) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:313:5 [INFO] [stdout] | [INFO] [stdout] 313 | / pub fn call_other( [INFO] [stdout] 314 | | &self, [INFO] [stdout] 315 | | function_name: &str, [INFO] [stdout] 316 | | args: &mut [LLVMValueRef], [INFO] [stdout] ... | [INFO] [stdout] 338 | | } [INFO] [stdout] 339 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:341:5 [INFO] [stdout] | [INFO] [stdout] 341 | pub fn get_param(&mut self, index: c_uint) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | pub fn verify(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | pub mod module; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/module.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Module { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/module.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub module: LLVMModuleRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/module.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(context: LLVMContextRef, name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/module.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new_string_ptr(&mut self, value: &str) -> *const i8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/module.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn empty_string(&self) -> *const i8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub mod types; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/codegen/types.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Types { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | Int, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | Bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | Char, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Void, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | Array(Box, c_uint), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | Func(Box, Vec, bool), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/types.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn to_llvm(&self, context: LLVMContextRef) -> LLVMTypeRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/types.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn printf() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/types.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn main() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/mod.rs:25:1 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct Environment(Rc>>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/mod.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct Codegen { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/mod.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn new(module_name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/mod.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn new_with_context(context: LLVMContextRef, module_name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/mod.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn module(&self) -> Rc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | pub mod execution_engine; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/execution_engine/mod.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct ExecutionEngine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/execution_engine/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(codegen: Codegen) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/execution_engine/mod.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn get_function(&mut self, function_name: &str) -> extern "C" fn() -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/execution_engine/mod.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn run_as_main(&mut self, main_fn: LLVMValueRef, argv: &[&str]) -> c_int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/lib.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | pub mod lexer; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:154:1 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct Block(Vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | pub fn new(statements: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:171:1 [INFO] [stdout] | [INFO] [stdout] 171 | pub struct VarDecl { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:172:5 [INFO] [stdout] | [INFO] [stdout] 172 | pub identifier: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:173:5 [INFO] [stdout] | [INFO] [stdout] 173 | pub expression: Expression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn new(identifier: String, expression: Expression) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a type alias [INFO] [stdout] --> src/parser/ast.rs:185:1 [INFO] [stdout] | [INFO] [stdout] 185 | pub type ExpressionContainer = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:188:1 [INFO] [stdout] | [INFO] [stdout] 188 | pub enum Expression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | Addition(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | Subtraction(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | Multiplication(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | Division(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:193:5 [INFO] [stdout] | [INFO] [stdout] 193 | Modulus(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 194 | Equality(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | NotEq(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | LessThan(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | GreaterThan(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 198 | LessEq(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:199:5 [INFO] [stdout] | [INFO] [stdout] 199 | GreaterEq(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:200:5 [INFO] [stdout] | [INFO] [stdout] 200 | And(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 201 | Or(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | Not(ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 203 | If(IfExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | Block(Block), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:205:5 [INFO] [stdout] | [INFO] [stdout] 205 | Value(Value), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a type alias [INFO] [stdout] --> src/parser/ast.rs:310:1 [INFO] [stdout] | [INFO] [stdout] 310 | pub type IfExpressionContainer = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:313:1 [INFO] [stdout] | [INFO] [stdout] 313 | pub struct IfExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 314 | pub condition: Expression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | pub body: Block, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 316 | pub else_expression: ElseExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn new(condition: Expression, body: Block, else_expression: ElseExpression) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:330:1 [INFO] [stdout] | [INFO] [stdout] 330 | pub enum ElseExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:331:5 [INFO] [stdout] | [INFO] [stdout] 331 | Block(Block), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 332 | IfExpression(IfExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:333:5 [INFO] [stdout] | [INFO] [stdout] 333 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:337:1 [INFO] [stdout] | [INFO] [stdout] 337 | pub enum Value { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:338:5 [INFO] [stdout] | [INFO] [stdout] 338 | Literal(Literal), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:339:5 [INFO] [stdout] | [INFO] [stdout] 339 | Variable(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | FunctionCall(FunctionCall), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:344:1 [INFO] [stdout] | [INFO] [stdout] 344 | pub enum Literal { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | Number(Number), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | Boolean(bool), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:347:5 [INFO] [stdout] | [INFO] [stdout] 347 | String(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:351:1 [INFO] [stdout] | [INFO] [stdout] 351 | pub struct FunctionCall { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | pub name: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:353:5 [INFO] [stdout] | [INFO] [stdout] 353 | pub arguments: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:357:5 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn new(name: &str, arguments: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:366:1 [INFO] [stdout] | [INFO] [stdout] 366 | pub enum Number { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:367:5 [INFO] [stdout] | [INFO] [stdout] 367 | Int(isize), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:368:5 [INFO] [stdout] | [INFO] [stdout] 368 | Float(f32), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:369:5 [INFO] [stdout] | [INFO] [stdout] 369 | Double(f64), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:400:5 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn to_int(&self) -> isize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/parser/mod.rs:94:1 [INFO] [stdout] | [INFO] [stdout] 94 | pub mod converter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a function [INFO] [stdout] --> src/parser/converter.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn convert_ast(program: ast::Program) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/parser/mod.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | pub mod error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/error.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct ParserError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | / pub fn new>( [INFO] [stdout] 18 | | message: T, [INFO] [stdout] 19 | | code: ParserErrorCode, [INFO] [stdout] 20 | | position: (usize, usize), [INFO] [stdout] ... | [INFO] [stdout] 28 | | } [INFO] [stdout] 29 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn error>(message: T, position: (usize, usize)) -> ParserError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn expected(expected: Vec, found: Token, position: (usize, usize)) -> ParserError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn message(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn code(&self) -> &ParserErrorCode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/error.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum ParserErrorCode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/lib.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | pub mod type_system; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a type alias [INFO] [stdout] --> src/type_system/mod.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub type Output = Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/type_system/mod.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct TypeSystem {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/type_system/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn analyze(_ast: &Program) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 132 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 00s [INFO] running `Command { std: "docker" "inspect" "cc737e41a7a8db3f48379afc70dfccbcf9a326943bfef0e752361389a9aac9cc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc737e41a7a8db3f48379afc70dfccbcf9a326943bfef0e752361389a9aac9cc", kill_on_drop: false }` [INFO] [stdout] cc737e41a7a8db3f48379afc70dfccbcf9a326943bfef0e752361389a9aac9cc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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=warn" "-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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 96075dbcc6e8821dac2f2a90692f0b3258269e1c40056389dcc50fd110fa2dfd [INFO] running `Command { std: "docker" "start" "-a" "96075dbcc6e8821dac2f2a90692f0b3258269e1c40056389dcc50fd110fa2dfd", kill_on_drop: false }` [INFO] [stderr] Compiling cargo-husky v1.5.0 [INFO] [stdout] warning: unused variable: `if_expr` [INFO] [stdout] --> src/type_system/mod.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_if_expr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/type_system/mod.rs:108:25 [INFO] [stdout] | [INFO] [stdout] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `var` [INFO] [stdout] --> src/type_system/mod.rs:126:28 [INFO] [stdout] | [INFO] [stdout] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_var` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func_call` [INFO] [stdout] --> src/type_system/mod.rs:130:33 [INFO] [stdout] | [INFO] [stdout] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `statement` [INFO] [stdout] --> src/type_system/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | fn statement(&mut self, _statement: &Statement) -> Output { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `expression` [INFO] [stdout] --> src/type_system/mod.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | fn expression(&mut self, expr: &Expression) -> Output { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `if_expression` [INFO] [stdout] --> src/type_system/mod.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `block` [INFO] [stdout] --> src/type_system/mod.rs:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `value` [INFO] [stdout] --> src/type_system/mod.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | fn value(&mut self, value: &Value) -> Output { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `variable` [INFO] [stdout] --> src/type_system/mod.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `function_call` [INFO] [stdout] --> src/type_system/mod.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | pub mod error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/error.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct CodegenError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/error.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn new>(message: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/error.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn error>(message: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/error.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn message(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | pub mod function; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/function.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Function { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/function.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub module: Rc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/function.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub builder: LLVMBuilderRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/function.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub context: LLVMContextRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn new(codegen: &mut Codegen, function_type: Types, name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn call(&self, args: &mut [LLVMValueRef], name: &str) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn basic_block(&mut self, name: &str) -> LLVMBasicBlockRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | pub fn position_at_block_ref(&mut self, block_ref: LLVMBasicBlockRef) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn build_statement(&mut self, statement: &Statement) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn build_expression(&mut self, expr: &Expression) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:243:5 [INFO] [stdout] | [INFO] [stdout] 243 | pub fn build_block(&mut self, block: &Block) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:250:5 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn build_if_expression(&mut self, if_expression: &IfExpression) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:287:5 [INFO] [stdout] | [INFO] [stdout] 287 | pub fn build(&mut self, builder: &dyn Fn(&mut Function)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:294:5 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn name(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 298 | pub fn assign(&mut self, var: &str, value: LLVMValueRef) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:302:5 [INFO] [stdout] | [INFO] [stdout] 302 | pub fn var(&self, var: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:309:5 [INFO] [stdout] | [INFO] [stdout] 309 | pub fn value(&self) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:313:5 [INFO] [stdout] | [INFO] [stdout] 313 | / pub fn call_other( [INFO] [stdout] 314 | | &self, [INFO] [stdout] 315 | | function_name: &str, [INFO] [stdout] 316 | | args: &mut [LLVMValueRef], [INFO] [stdout] ... | [INFO] [stdout] 338 | | } [INFO] [stdout] 339 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:341:5 [INFO] [stdout] | [INFO] [stdout] 341 | pub fn get_param(&mut self, index: c_uint) -> LLVMValueRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/function.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | pub fn verify(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | pub mod module; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/module.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Module { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/codegen/module.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub module: LLVMModuleRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/module.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(context: LLVMContextRef, name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/module.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new_string_ptr(&mut self, value: &str) -> *const i8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/module.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn empty_string(&self) -> *const i8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/codegen/mod.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub mod types; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/codegen/types.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Types { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | Int, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | Bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | Char, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Void, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | Array(Box, c_uint), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/codegen/types.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | Func(Box, Vec, bool), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/types.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn to_llvm(&self, context: LLVMContextRef) -> LLVMTypeRef { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/types.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn printf() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/types.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn main() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/mod.rs:25:1 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct Environment(Rc>>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/codegen/mod.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct Codegen { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/mod.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn new(module_name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/mod.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn new_with_context(context: LLVMContextRef, module_name: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/codegen/mod.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn module(&self) -> Rc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | pub mod execution_engine; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/execution_engine/mod.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct ExecutionEngine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/execution_engine/mod.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(codegen: Codegen) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/execution_engine/mod.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn get_function(&mut self, function_name: &str) -> extern "C" fn() -> () { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/execution_engine/mod.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn run_as_main(&mut self, main_fn: LLVMValueRef, argv: &[&str]) -> c_int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/lib.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | pub mod lexer; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:154:1 [INFO] [stdout] | [INFO] [stdout] 154 | pub struct Block(Vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | pub fn new(statements: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:171:1 [INFO] [stdout] | [INFO] [stdout] 171 | pub struct VarDecl { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:172:5 [INFO] [stdout] | [INFO] [stdout] 172 | pub identifier: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:173:5 [INFO] [stdout] | [INFO] [stdout] 173 | pub expression: Expression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn new(identifier: String, expression: Expression) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a type alias [INFO] [stdout] --> src/parser/ast.rs:185:1 [INFO] [stdout] | [INFO] [stdout] 185 | pub type ExpressionContainer = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:188:1 [INFO] [stdout] | [INFO] [stdout] 188 | pub enum Expression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:189:5 [INFO] [stdout] | [INFO] [stdout] 189 | Addition(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:190:5 [INFO] [stdout] | [INFO] [stdout] 190 | Subtraction(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | Multiplication(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | Division(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:193:5 [INFO] [stdout] | [INFO] [stdout] 193 | Modulus(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 194 | Equality(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:195:5 [INFO] [stdout] | [INFO] [stdout] 195 | NotEq(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | LessThan(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | GreaterThan(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:198:5 [INFO] [stdout] | [INFO] [stdout] 198 | LessEq(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:199:5 [INFO] [stdout] | [INFO] [stdout] 199 | GreaterEq(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:200:5 [INFO] [stdout] | [INFO] [stdout] 200 | And(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 201 | Or(ExpressionContainer, ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 202 | Not(ExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 203 | If(IfExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | Block(Block), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:205:5 [INFO] [stdout] | [INFO] [stdout] 205 | Value(Value), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a type alias [INFO] [stdout] --> src/parser/ast.rs:310:1 [INFO] [stdout] | [INFO] [stdout] 310 | pub type IfExpressionContainer = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:313:1 [INFO] [stdout] | [INFO] [stdout] 313 | pub struct IfExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 314 | pub condition: Expression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | pub body: Block, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 316 | pub else_expression: ElseExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn new(condition: Expression, body: Block, else_expression: ElseExpression) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:330:1 [INFO] [stdout] | [INFO] [stdout] 330 | pub enum ElseExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:331:5 [INFO] [stdout] | [INFO] [stdout] 331 | Block(Block), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 332 | IfExpression(IfExpressionContainer), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:333:5 [INFO] [stdout] | [INFO] [stdout] 333 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:337:1 [INFO] [stdout] | [INFO] [stdout] 337 | pub enum Value { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:338:5 [INFO] [stdout] | [INFO] [stdout] 338 | Literal(Literal), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:339:5 [INFO] [stdout] | [INFO] [stdout] 339 | Variable(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | FunctionCall(FunctionCall), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:344:1 [INFO] [stdout] | [INFO] [stdout] 344 | pub enum Literal { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | Number(Number), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | Boolean(bool), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:347:5 [INFO] [stdout] | [INFO] [stdout] 347 | String(String), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/ast.rs:351:1 [INFO] [stdout] | [INFO] [stdout] 351 | pub struct FunctionCall { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | pub name: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/parser/ast.rs:353:5 [INFO] [stdout] | [INFO] [stdout] 353 | pub arguments: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:357:5 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn new(name: &str, arguments: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/ast.rs:366:1 [INFO] [stdout] | [INFO] [stdout] 366 | pub enum Number { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:367:5 [INFO] [stdout] | [INFO] [stdout] 367 | Int(isize), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:368:5 [INFO] [stdout] | [INFO] [stdout] 368 | Float(f32), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/parser/ast.rs:369:5 [INFO] [stdout] | [INFO] [stdout] 369 | Double(f64), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/ast.rs:400:5 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn to_int(&self) -> isize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/parser/mod.rs:94:1 [INFO] [stdout] | [INFO] [stdout] 94 | pub mod converter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a function [INFO] [stdout] --> src/parser/converter.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn convert_ast(program: ast::Program) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/parser/mod.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | pub mod error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/parser/error.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct ParserError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | / pub fn new>( [INFO] [stdout] 18 | | message: T, [INFO] [stdout] 19 | | code: ParserErrorCode, [INFO] [stdout] 20 | | position: (usize, usize), [INFO] [stdout] ... | [INFO] [stdout] 28 | | } [INFO] [stdout] 29 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn error>(message: T, position: (usize, usize)) -> ParserError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub fn expected(expected: Vec, found: Token, position: (usize, usize)) -> ParserError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn message(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/parser/error.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn code(&self) -> &ParserErrorCode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/parser/error.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum ParserErrorCode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a module [INFO] [stdout] --> src/lib.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | pub mod type_system; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a type alias [INFO] [stdout] --> src/type_system/mod.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | pub type Output = Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/type_system/mod.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct TypeSystem {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/type_system/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn analyze(_ast: &Program) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 132 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling poop v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `if_expr` [INFO] [stdout] --> src/type_system/mod.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_if_expr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/type_system/mod.rs:108:25 [INFO] [stdout] | [INFO] [stdout] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `var` [INFO] [stdout] --> src/type_system/mod.rs:126:28 [INFO] [stdout] | [INFO] [stdout] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_var` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func_call` [INFO] [stdout] --> src/type_system/mod.rs:130:33 [INFO] [stdout] | [INFO] [stdout] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `statement` [INFO] [stdout] --> src/type_system/mod.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | fn statement(&mut self, _statement: &Statement) -> Output { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `expression` [INFO] [stdout] --> src/type_system/mod.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | fn expression(&mut self, expr: &Expression) -> Output { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `if_expression` [INFO] [stdout] --> src/type_system/mod.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `block` [INFO] [stdout] --> src/type_system/mod.rs:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `value` [INFO] [stdout] --> src/type_system/mod.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | fn value(&mut self, value: &Value) -> Output { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `variable` [INFO] [stdout] --> src/type_system/mod.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `function_call` [INFO] [stdout] --> src/type_system/mod.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 6.11s [INFO] running `Command { std: "docker" "inspect" "96075dbcc6e8821dac2f2a90692f0b3258269e1c40056389dcc50fd110fa2dfd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "96075dbcc6e8821dac2f2a90692f0b3258269e1c40056389dcc50fd110fa2dfd", kill_on_drop: false }` [INFO] [stdout] 96075dbcc6e8821dac2f2a90692f0b3258269e1c40056389dcc50fd110fa2dfd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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=warn" "-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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+1.52.1" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 55e6a6323ed6d868cd63ceecbe1d4c97d16930174935aea932ba01c36c67c88a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "55e6a6323ed6d868cd63ceecbe1d4c97d16930174935aea932ba01c36c67c88a", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `if_expr` [INFO] [stderr] --> src/type_system/mod.rs:104:33 [INFO] [stderr] | [INFO] [stderr] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_if_expr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/type_system/mod.rs:108:25 [INFO] [stderr] | [INFO] [stderr] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `var` [INFO] [stderr] --> src/type_system/mod.rs:126:28 [INFO] [stderr] | [INFO] [stderr] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_var` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `func_call` [INFO] [stderr] --> src/type_system/mod.rs:130:33 [INFO] [stderr] | [INFO] [stderr] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_call` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `statement` [INFO] [stderr] --> src/type_system/mod.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | fn statement(&mut self, _statement: &Statement) -> Output { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `expression` [INFO] [stderr] --> src/type_system/mod.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | fn expression(&mut self, expr: &Expression) -> Output { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `if_expression` [INFO] [stderr] --> src/type_system/mod.rs:104:8 [INFO] [stderr] | [INFO] [stderr] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `block` [INFO] [stderr] --> src/type_system/mod.rs:108:8 [INFO] [stderr] | [INFO] [stderr] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `value` [INFO] [stderr] --> src/type_system/mod.rs:112:8 [INFO] [stderr] | [INFO] [stderr] 112 | fn value(&mut self, value: &Value) -> Output { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `variable` [INFO] [stderr] --> src/type_system/mod.rs:126:8 [INFO] [stderr] | [INFO] [stderr] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `function_call` [INFO] [stderr] --> src/type_system/mod.rs:130:8 [INFO] [stderr] | [INFO] [stderr] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/codegen/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub mod error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | #![warn(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/codegen/error.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | pub struct CodegenError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/error.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn new>(message: T) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/error.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn error>(message: T) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/error.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn message(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/codegen/mod.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | pub mod function; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/codegen/function.rs:29:1 [INFO] [stderr] | [INFO] [stderr] 29 | pub struct Function { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/codegen/function.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | pub module: Rc>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/codegen/function.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | pub builder: LLVMBuilderRef, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/codegen/function.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub context: LLVMContextRef, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new(codegen: &mut Codegen, function_type: Types, name: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn call(&self, args: &mut [LLVMValueRef], name: &str) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:65:5 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn basic_block(&mut self, name: &str) -> LLVMBasicBlockRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn position_at_block_ref(&mut self, block_ref: LLVMBasicBlockRef) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 103 | pub fn build_statement(&mut self, statement: &Statement) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:116:5 [INFO] [stderr] | [INFO] [stderr] 116 | pub fn build_expression(&mut self, expr: &Expression) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:243:5 [INFO] [stderr] | [INFO] [stderr] 243 | pub fn build_block(&mut self, block: &Block) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:250:5 [INFO] [stderr] | [INFO] [stderr] 250 | pub fn build_if_expression(&mut self, if_expression: &IfExpression) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:287:5 [INFO] [stderr] | [INFO] [stderr] 287 | pub fn build(&mut self, builder: &dyn Fn(&mut Function)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:294:5 [INFO] [stderr] | [INFO] [stderr] 294 | pub fn name(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:298:5 [INFO] [stderr] | [INFO] [stderr] 298 | pub fn assign(&mut self, var: &str, value: LLVMValueRef) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:302:5 [INFO] [stderr] | [INFO] [stderr] 302 | pub fn var(&self, var: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:309:5 [INFO] [stderr] | [INFO] [stderr] 309 | pub fn value(&self) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:313:5 [INFO] [stderr] | [INFO] [stderr] 313 | / pub fn call_other( [INFO] [stderr] 314 | | &self, [INFO] [stderr] 315 | | function_name: &str, [INFO] [stderr] 316 | | args: &mut [LLVMValueRef], [INFO] [stderr] ... | [INFO] [stderr] 338 | | } [INFO] [stderr] 339 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:341:5 [INFO] [stderr] | [INFO] [stderr] 341 | pub fn get_param(&mut self, index: c_uint) -> LLVMValueRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/function.rs:346:5 [INFO] [stderr] | [INFO] [stderr] 346 | pub fn verify(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/codegen/mod.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | pub mod module; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/codegen/module.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub struct Module { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/codegen/module.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | pub module: LLVMModuleRef, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/module.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn new(context: LLVMContextRef, name: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/module.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn new_string_ptr(&mut self, value: &str) -> *const i8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/module.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn empty_string(&self) -> *const i8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/codegen/mod.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub mod types; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/codegen/types.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub enum Types { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | Int, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | Bool, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | Char, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | Void, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | Array(Box, c_uint), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/codegen/types.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | Func(Box, Vec, bool), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/types.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn to_llvm(&self, context: LLVMContextRef) -> LLVMTypeRef { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/types.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn printf() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/types.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | pub fn main() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/codegen/mod.rs:25:1 [INFO] [stderr] | [INFO] [stderr] 25 | pub struct Environment(Rc>>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/codegen/mod.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct Codegen { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/mod.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn new(module_name: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/mod.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn new_with_context(context: LLVMContextRef, module_name: &str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/codegen/mod.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | pub fn module(&self) -> Rc> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/lib.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | pub mod execution_engine; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/execution_engine/mod.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct ExecutionEngine { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/execution_engine/mod.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new(codegen: Codegen) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/execution_engine/mod.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn get_function(&mut self, function_name: &str) -> extern "C" fn() -> () { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/execution_engine/mod.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn run_as_main(&mut self, main_fn: LLVMValueRef, argv: &[&str]) -> c_int { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/lib.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | pub mod lexer; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/parser/ast.rs:154:1 [INFO] [stderr] | [INFO] [stderr] 154 | pub struct Block(Vec); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/ast.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 157 | pub fn new(statements: Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/parser/ast.rs:171:1 [INFO] [stderr] | [INFO] [stderr] 171 | pub struct VarDecl { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:172:5 [INFO] [stderr] | [INFO] [stderr] 172 | pub identifier: String, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:173:5 [INFO] [stderr] | [INFO] [stderr] 173 | pub expression: Expression, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/ast.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn new(identifier: String, expression: Expression) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a type alias [INFO] [stderr] --> src/parser/ast.rs:185:1 [INFO] [stderr] | [INFO] [stderr] 185 | pub type ExpressionContainer = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/parser/ast.rs:188:1 [INFO] [stderr] | [INFO] [stderr] 188 | pub enum Expression { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:189:5 [INFO] [stderr] | [INFO] [stderr] 189 | Addition(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | Subtraction(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:191:5 [INFO] [stderr] | [INFO] [stderr] 191 | Multiplication(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | Division(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:193:5 [INFO] [stderr] | [INFO] [stderr] 193 | Modulus(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | Equality(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | NotEq(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | LessThan(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:197:5 [INFO] [stderr] | [INFO] [stderr] 197 | GreaterThan(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:198:5 [INFO] [stderr] | [INFO] [stderr] 198 | LessEq(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:199:5 [INFO] [stderr] | [INFO] [stderr] 199 | GreaterEq(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | And(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:201:5 [INFO] [stderr] | [INFO] [stderr] 201 | Or(ExpressionContainer, ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:202:5 [INFO] [stderr] | [INFO] [stderr] 202 | Not(ExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:203:5 [INFO] [stderr] | [INFO] [stderr] 203 | If(IfExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | Block(Block), [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:205:5 [INFO] [stderr] | [INFO] [stderr] 205 | Value(Value), [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a type alias [INFO] [stderr] --> src/parser/ast.rs:310:1 [INFO] [stderr] | [INFO] [stderr] 310 | pub type IfExpressionContainer = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/parser/ast.rs:313:1 [INFO] [stderr] | [INFO] [stderr] 313 | pub struct IfExpression { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:314:5 [INFO] [stderr] | [INFO] [stderr] 314 | pub condition: Expression, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:315:5 [INFO] [stderr] | [INFO] [stderr] 315 | pub body: Block, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:316:5 [INFO] [stderr] | [INFO] [stderr] 316 | pub else_expression: ElseExpression, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/ast.rs:320:5 [INFO] [stderr] | [INFO] [stderr] 320 | pub fn new(condition: Expression, body: Block, else_expression: ElseExpression) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/parser/ast.rs:330:1 [INFO] [stderr] | [INFO] [stderr] 330 | pub enum ElseExpression { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:331:5 [INFO] [stderr] | [INFO] [stderr] 331 | Block(Block), [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:332:5 [INFO] [stderr] | [INFO] [stderr] 332 | IfExpression(IfExpressionContainer), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:333:5 [INFO] [stderr] | [INFO] [stderr] 333 | None, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/parser/ast.rs:337:1 [INFO] [stderr] | [INFO] [stderr] 337 | pub enum Value { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:338:5 [INFO] [stderr] | [INFO] [stderr] 338 | Literal(Literal), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:339:5 [INFO] [stderr] | [INFO] [stderr] 339 | Variable(String), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:340:5 [INFO] [stderr] | [INFO] [stderr] 340 | FunctionCall(FunctionCall), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/parser/ast.rs:344:1 [INFO] [stderr] | [INFO] [stderr] 344 | pub enum Literal { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:345:5 [INFO] [stderr] | [INFO] [stderr] 345 | Number(Number), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:346:5 [INFO] [stderr] | [INFO] [stderr] 346 | Boolean(bool), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:347:5 [INFO] [stderr] | [INFO] [stderr] 347 | String(String), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/parser/ast.rs:351:1 [INFO] [stderr] | [INFO] [stderr] 351 | pub struct FunctionCall { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:352:5 [INFO] [stderr] | [INFO] [stderr] 352 | pub name: String, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/parser/ast.rs:353:5 [INFO] [stderr] | [INFO] [stderr] 353 | pub arguments: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/ast.rs:357:5 [INFO] [stderr] | [INFO] [stderr] 357 | pub fn new(name: &str, arguments: Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/parser/ast.rs:366:1 [INFO] [stderr] | [INFO] [stderr] 366 | pub enum Number { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:367:5 [INFO] [stderr] | [INFO] [stderr] 367 | Int(isize), [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:368:5 [INFO] [stderr] | [INFO] [stderr] 368 | Float(f32), [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/parser/ast.rs:369:5 [INFO] [stderr] | [INFO] [stderr] 369 | Double(f64), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/ast.rs:400:5 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn to_int(&self) -> isize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/parser/mod.rs:94:1 [INFO] [stderr] | [INFO] [stderr] 94 | pub mod converter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a function [INFO] [stderr] --> src/parser/converter.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn convert_ast(program: ast::Program) -> Output { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/parser/mod.rs:95:1 [INFO] [stderr] | [INFO] [stderr] 95 | pub mod error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/parser/error.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct ParserError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/error.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | / pub fn new>( [INFO] [stderr] 18 | | message: T, [INFO] [stderr] 19 | | code: ParserErrorCode, [INFO] [stderr] 20 | | position: (usize, usize), [INFO] [stderr] ... | [INFO] [stderr] 28 | | } [INFO] [stderr] 29 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/error.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn error>(message: T, position: (usize, usize)) -> ParserError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/error.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn expected(expected: Vec, found: Token, position: (usize, usize)) -> ParserError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/error.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn message(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/parser/error.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn code(&self) -> &ParserErrorCode { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an enum [INFO] [stderr] --> src/parser/error.rs:70:1 [INFO] [stderr] | [INFO] [stderr] 70 | pub enum ParserErrorCode { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a module [INFO] [stderr] --> src/lib.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub mod type_system; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a type alias [INFO] [stderr] --> src/type_system/mod.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub type Output = Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/type_system/mod.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct TypeSystem {} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/type_system/mod.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn analyze(_ast: &Program) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 132 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused variable: `if_expr` [INFO] [stderr] --> src/type_system/mod.rs:104:33 [INFO] [stderr] | [INFO] [stderr] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_if_expr` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/type_system/mod.rs:108:25 [INFO] [stderr] | [INFO] [stderr] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `var` [INFO] [stderr] --> src/type_system/mod.rs:126:28 [INFO] [stderr] | [INFO] [stderr] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_var` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `func_call` [INFO] [stderr] --> src/type_system/mod.rs:130:33 [INFO] [stderr] | [INFO] [stderr] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_func_call` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `statement` [INFO] [stderr] --> src/type_system/mod.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | fn statement(&mut self, _statement: &Statement) -> Output { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `expression` [INFO] [stderr] --> src/type_system/mod.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | fn expression(&mut self, expr: &Expression) -> Output { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `if_expression` [INFO] [stderr] --> src/type_system/mod.rs:104:8 [INFO] [stderr] | [INFO] [stderr] 104 | fn if_expression(&mut self, if_expr: &IfExpression) -> Output { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `block` [INFO] [stderr] --> src/type_system/mod.rs:108:8 [INFO] [stderr] | [INFO] [stderr] 108 | fn block(&mut self, block: &Block) -> Output { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `value` [INFO] [stderr] --> src/type_system/mod.rs:112:8 [INFO] [stderr] | [INFO] [stderr] 112 | fn value(&mut self, value: &Value) -> Output { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `variable` [INFO] [stderr] --> src/type_system/mod.rs:126:8 [INFO] [stderr] | [INFO] [stderr] 126 | fn variable(&mut self, var: &str) -> Output { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `function_call` [INFO] [stderr] --> src/type_system/mod.rs:130:8 [INFO] [stderr] | [INFO] [stderr] 130 | fn function_call(&mut self, func_call: &FunctionCall) -> Output { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 11 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.15s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/poop-18c6cff4df3fba47) [INFO] [stdout] [INFO] [stdout] running 33 tests [INFO] [stdout] test lexer::test::first_line ... ok [INFO] [stdout] test parser::test::arg_decls_multiple_args ... ok [INFO] [stdout] test parser::test::arg_decls_single_arg ... ok [INFO] [stdout] test parser::test::expression_precedence_modulus_first_test ... ok [INFO] [stdout] test parser::test::decl_var_decl ... ok [INFO] [stdout] test parser::test::decl_func_decl ... ok [INFO] [stdout] test parser::test::expression_precedence_modulus_last_test ... ok [INFO] [stdout] test lexer::test::second_line ... ok [INFO] [stdout] test parser::test::expression_multiplication_and_unary_minus_test ... ok [INFO] [stdout] test parser::test::expression_precedence_multiplication_first_test ... ok [INFO] [stdout] test parser::test::block_single_statement_with_return ... ok [INFO] [stdout] test parser::test::block_with_inner_block ... ok [INFO] [stdout] test parser::test::expression_precedence_parentheses_test ... ok [INFO] [stdout] test parser::test::expression_unary_minus_first_then_multiplication_test ... ok [INFO] [stdout] test parser::test::func_decl_with_args_with_return_type ... ok [INFO] [stdout] test parser::test::expression_with_function_call_without_arguments ... ok [INFO] [stdout] test parser::test::if_expression_with_else_block ... ok [INFO] [stdout] test parser::test::func_decl_without_args_with_return_type ... ok [INFO] [stdout] test parser::test::func_decl_without_args_without_return_type ... ok [INFO] [stdout] test parser::test::if_expression_no_else ... ok [INFO] [stdout] test parser::test::program_with_single_function ... ok [INFO] [stdout] test parser::test::func_decl_with_args_without_return_type ... ok [INFO] [stdout] test parser::test::expression_with_function_call_with_single_argument ... ok [INFO] [stdout] test parser::test::if_expression_with_else_if ... ok [INFO] [stdout] test parser::test::expression_with_variable ... ok [INFO] [stdout] test parser::test::expression_with_function_call_with_multiple_arguments ... ok [INFO] [stdout] test parser::test::var_decl ... ok [INFO] [stdout] test parser::test::var_decl_with_string ... ok [INFO] [stdout] test parser::test::block_single_statement_without_return ... ok [INFO] [stdout] test parser::test::block_double_statement_with_return ... ok [INFO] [stdout] test parser::test::expression_precedence_double_parentheses_test ... ok [INFO] [stdout] test parser::test::expression_precedence_multiplication_last_test ... ok [INFO] [stdout] test parser::test::statement_with_if_expression_no_else ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/poop-0c0fabb2326c4846) [INFO] [stdout] [INFO] [stderr] Doc-tests poop [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "55e6a6323ed6d868cd63ceecbe1d4c97d16930174935aea932ba01c36c67c88a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "55e6a6323ed6d868cd63ceecbe1d4c97d16930174935aea932ba01c36c67c88a", kill_on_drop: false }` [INFO] [stdout] 55e6a6323ed6d868cd63ceecbe1d4c97d16930174935aea932ba01c36c67c88a