[INFO] cloning repository https://github.com/vitvakatu/ruoscript [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vitvakatu/ruoscript" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvitvakatu%2Fruoscript", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvitvakatu%2Fruoscript'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 57a68ab890814bbe1941ba47b677d7f31e8174c6 [INFO] checking vitvakatu/ruoscript against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvitvakatu%2Fruoscript" "/workspace/builds/worker-11/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/vitvakatu/ruoscript on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/vitvakatu/ruoscript [INFO] finished tweaking git repo https://github.com/vitvakatu/ruoscript [INFO] tweaked toml for git repo https://github.com/vitvakatu/ruoscript written to /workspace/builds/worker-11/source/Cargo.toml [INFO] crate git repo https://github.com/vitvakatu/ruoscript already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rustc-demangle v0.1.9 [INFO] [stderr] Downloaded syn v0.14.9 [INFO] [stderr] Downloaded humantime v1.1.1 [INFO] [stderr] Downloaded failure v0.1.2 [INFO] [stderr] Downloaded failure_derive v0.1.2 [INFO] [stderr] Downloaded wincolor v1.0.1 [INFO] [stderr] Downloaded backtrace v0.3.9 [INFO] [stderr] Downloaded synstructure v0.9.0 [INFO] [stderr] Downloaded log v0.4.5 [INFO] [stderr] Downloaded memchr v2.1.0 [INFO] [stderr] Downloaded termcolor v1.0.4 [INFO] [stderr] Downloaded env_logger v0.5.13 [INFO] [stderr] Downloaded cc v1.0.25 [INFO] [stderr] Downloaded backtrace-sys v0.1.24 [INFO] [stderr] Downloaded llvm-sys v70.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bb1c1c52f842b5076d1230ce2cd0081d94d67e7075631fd8af7200b4ae87f583 [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" "bb1c1c52f842b5076d1230ce2cd0081d94d67e7075631fd8af7200b4ae87f583", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bb1c1c52f842b5076d1230ce2cd0081d94d67e7075631fd8af7200b4ae87f583", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bb1c1c52f842b5076d1230ce2cd0081d94d67e7075631fd8af7200b4ae87f583", kill_on_drop: false }` [INFO] [stdout] bb1c1c52f842b5076d1230ce2cd0081d94d67e7075631fd8af7200b4ae87f583 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--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] ee893d68fe5562973a74e81cf5b3c8f0b872721647df2b9cf98e1eb48b01ef70 [INFO] running `Command { std: "docker" "start" "-a" "ee893d68fe5562973a74e81cf5b3c8f0b872721647df2b9cf98e1eb48b01ef70", kill_on_drop: false }` [INFO] [stderr] Checking cfg-if v0.1.5 [INFO] [stderr] Compiling cc v1.0.25 [INFO] [stderr] Compiling utf8-ranges v1.0.1 [INFO] [stderr] Compiling failure_derive v0.1.2 [INFO] [stderr] Checking rustc-demangle v0.1.9 [INFO] [stderr] Compiling memchr v2.1.0 [INFO] [stderr] Compiling regex v1.0.5 [INFO] [stderr] Compiling regex-syntax v0.6.2 [INFO] [stderr] Checking humantime v1.1.1 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling syn v0.14.9 [INFO] [stderr] Checking log v0.4.5 [INFO] [stderr] Checking aho-corasick v0.6.8 [INFO] [stderr] Compiling backtrace-sys v0.1.24 [INFO] [stderr] Checking backtrace v0.3.9 [INFO] [stderr] Checking env_logger v0.5.13 [INFO] [stderr] Compiling synstructure v0.9.0 [INFO] [stderr] Checking failure v0.1.2 [INFO] [stderr] Compiling llvm-sys v70.0.0 [INFO] [stderr] Checking ruoscript v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: unexpected token: `)` [INFO] [stdout] --> src/codegen/mod.rs:96:90 [INFO] [stdout] | [INFO] [stdout] 96 | for (arg, arg_name) in params.iter().zip(proto.args.iter()).zip(proto.ty.) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected `;`, found `context` [INFO] [stdout] --> src/codegen/mod.rs:97:79 [INFO] [stdout] | [INFO] [stdout] 97 | let allocated_value = core::LLVMBuildAlloca(ctx.builder, ) [INFO] [stdout] | ^ help: add `;` here [INFO] [stdout] 98 | context [INFO] [stdout] | ------- unexpected token [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unexpected token: `)` [INFO] [stdout] --> src/codegen/mod.rs:96:90 [INFO] [stdout] | [INFO] [stdout] 96 | for (arg, arg_name) in params.iter().zip(proto.args.iter()).zip(proto.ty.) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected `;`, found `context` [INFO] [stdout] --> src/codegen/mod.rs:97:79 [INFO] [stdout] | [INFO] [stdout] 97 | let allocated_value = core::LLVMBuildAlloca(ctx.builder, ) [INFO] [stdout] | ^ help: add `;` here [INFO] [stdout] 98 | context [INFO] [stdout] | ------- unexpected token [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `ctx` in this scope [INFO] [stdout] --> src/codegen/mod.rs:97:65 [INFO] [stdout] | [INFO] [stdout] 97 | let allocated_value = core::LLVMBuildAlloca(ctx.builder, ) [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/codegen/mod.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TYPE_VOID` [INFO] [stdout] --> src/codegen/mod.rs:7:48 [INFO] [stdout] | [INFO] [stdout] 7 | use types::{TypedExpr, TYPE_ANY, TYPE_INTEGER, TYPE_VOID}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parser::ast::Expr` [INFO] [stdout] --> src/codegen/any.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use parser::ast::Expr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/codegen/any.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TYPE_ANY`, `TYPE_INTEGER` [INFO] [stdout] --> src/codegen/any.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use types::{TYPE_ANY, TYPE_INTEGER}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `failure::Error` [INFO] [stdout] --> src/types.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use failure::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/types.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `parser::ast::helpers` [INFO] [stdout] --> src/parser/mod.rs:535:23 [INFO] [stdout] | [INFO] [stdout] 535 | use parser::ast::{helpers::*, Block, Expr, Prototype, TopLevelStatement}; [INFO] [stdout] | ^^^^^^^ could not find `helpers` in `ast` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `types::FunctionType` is not an iterator [INFO] [stdout] --> src/codegen/mod.rs:96:81 [INFO] [stdout] | [INFO] [stdout] 96 | for (arg, arg_name) in params.iter().zip(proto.args.iter()).zip(proto.ty.) { [INFO] [stdout] | ^^^^^^^^ `types::FunctionType` is not an iterator [INFO] [stdout] | [INFO] [stdout] = help: the trait `Iterator` is not implemented for `types::FunctionType` [INFO] [stdout] = note: required because of the requirements on the impl of `IntoIterator` for `types::FunctionType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `types::FunctionType` is not an iterator [INFO] [stdout] --> src/codegen/mod.rs:96:40 [INFO] [stdout] | [INFO] [stdout] 96 | for (arg, arg_name) in params.iter().zip(proto.args.iter()).zip(proto.ty.) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types::FunctionType` is not an iterator [INFO] [stdout] | [INFO] [stdout] = help: the trait `Iterator` is not implemented for `types::FunctionType` [INFO] [stdout] = note: required because of the requirements on the impl of `Iterator` for `Zip, std::slice::Iter<'_, String>>, types::FunctionType>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> src/codegen/mod.rs:97:43 [INFO] [stdout] | [INFO] [stdout] 97 | let allocated_value = core::LLVMBuildAlloca(ctx.builder, ) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ----------- supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 3 arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `ctx` in this scope [INFO] [stdout] --> src/codegen/mod.rs:97:65 [INFO] [stdout] | [INFO] [stdout] 97 | let allocated_value = core::LLVMBuildAlloca(ctx.builder, ) [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `module` in this scope [INFO] [stdout] --> src/parser/mod.rs:573:39 [INFO] [stdout] | [INFO] [stdout] 573 | assert_parse_top_level!("" => module(vec![])); [INFO] [stdout] | ^^^^^^ help: a tuple struct with a similar name exists: `Module` [INFO] [stdout] | [INFO] [stdout] ::: src/parser/ast.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Module(pub Vec); [INFO] [stdout] | ---------------------------------------------- similarly named tuple struct `Module` defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_void` in this scope [INFO] [stdout] --> src/parser/mod.rs:575:29 [INFO] [stdout] | [INFO] [stdout] 575 | assert_parse!("" => block_void(vec![])); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:581:32 [INFO] [stdout] | [INFO] [stdout] 581 | assert_parse!("123" => block_expr(int(123))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:581:43 [INFO] [stdout] | [INFO] [stdout] 581 | assert_parse!("123" => block_expr(int(123))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:582:30 [INFO] [stdout] | [INFO] [stdout] 582 | assert_parse!("0" => block_expr(int(0))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:582:41 [INFO] [stdout] | [INFO] [stdout] 582 | assert_parse!("0" => block_expr(int(0))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:583:30 [INFO] [stdout] | [INFO] [stdout] 583 | assert_parse!("1" => block_expr(int(1))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:583:41 [INFO] [stdout] | [INFO] [stdout] 583 | assert_parse!("1" => block_expr(int(1))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:584:38 [INFO] [stdout] | [INFO] [stdout] 584 | assert_parse!("3_000_000" => block_expr(int(3_000_000))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:584:49 [INFO] [stdout] | [INFO] [stdout] 584 | assert_parse!("3_000_000" => block_expr(int(3_000_000))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:585:36 [INFO] [stdout] | [INFO] [stdout] 585 | assert_parse!("3000000" => block_expr(int(3_000_000))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:585:47 [INFO] [stdout] | [INFO] [stdout] 585 | assert_parse!("3000000" => block_expr(int(3_000_000))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:591:31 [INFO] [stdout] | [INFO] [stdout] 591 | assert_parse!("''" => block_expr(string(""))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `string` in this scope [INFO] [stdout] --> src/parser/mod.rs:591:42 [INFO] [stdout] | [INFO] [stdout] 591 | assert_parse!("''" => block_expr(string(""))); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::string; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:592:33 [INFO] [stdout] | [INFO] [stdout] 592 | assert_parse!("\"\"" => block_expr(string(""))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `string` in this scope [INFO] [stdout] --> src/parser/mod.rs:592:44 [INFO] [stdout] | [INFO] [stdout] 592 | assert_parse!("\"\"" => block_expr(string(""))); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::string; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:593:42 [INFO] [stdout] | [INFO] [stdout] 593 | assert_parse!("'some string'" => block_expr(string("some string"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `string` in this scope [INFO] [stdout] --> src/parser/mod.rs:593:53 [INFO] [stdout] | [INFO] [stdout] 593 | assert_parse!("'some string'" => block_expr(string("some string"))); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::string; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:594:44 [INFO] [stdout] | [INFO] [stdout] 594 | assert_parse!("\"some string\"" => block_expr(string("some string"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `string` in this scope [INFO] [stdout] --> src/parser/mod.rs:594:55 [INFO] [stdout] | [INFO] [stdout] 594 | assert_parse!("\"some string\"" => block_expr(string("some string"))); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::string; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/codegen/mod.rs:100:52 [INFO] [stdout] | [INFO] [stdout] 100 | .insert(arg_name.clone(), (arg.clone(), TYPE_ANY.to_string())); [INFO] [stdout] | ^^^^^^^^^^^ expected *-ptr, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut LLVMValue` [INFO] [stdout] found tuple `(&*mut LLVMValue, &String)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_void` in this scope [INFO] [stdout] --> src/parser/mod.rs:600:38 [INFO] [stdout] | [INFO] [stdout] 600 | assert_parse!("var i = 1" => block_void(vec![ [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `var_declaration` in this scope [INFO] [stdout] --> src/parser/mod.rs:601:13 [INFO] [stdout] | [INFO] [stdout] 601 | var_declaration("i", int(1)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:601:34 [INFO] [stdout] | [INFO] [stdout] 601 | var_declaration("i", int(1)) [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_void` in this scope [INFO] [stdout] --> src/parser/mod.rs:603:52 [INFO] [stdout] | [INFO] [stdout] 603 | assert_parse!("var string = \"string\"" => block_void(vec![ [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `var_declaration` in this scope [INFO] [stdout] --> src/parser/mod.rs:604:13 [INFO] [stdout] | [INFO] [stdout] 604 | var_declaration("string", string("string")) [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `string` in this scope [INFO] [stdout] --> src/parser/mod.rs:604:39 [INFO] [stdout] | [INFO] [stdout] 589 | fn strings() { [INFO] [stdout] | ------------ similarly named constant `strings` defined here [INFO] [stdout] ... [INFO] [stdout] 604 | var_declaration("string", string("string")) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: a constant with a similar name exists [INFO] [stdout] | [INFO] [stdout] 604 | var_declaration("string", strings("string")) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::string; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_void` in this scope [INFO] [stdout] --> src/parser/mod.rs:611:37 [INFO] [stdout] | [INFO] [stdout] 611 | assert_parse!("return 1" => block_void(vec![ret(int(1))])); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `ret` in this scope [INFO] [stdout] --> src/parser/mod.rs:611:53 [INFO] [stdout] | [INFO] [stdout] 611 | assert_parse!("return 1" => block_void(vec![ret(int(1))])); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::ret; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:611:57 [INFO] [stdout] | [INFO] [stdout] 611 | assert_parse!("return 1" => block_void(vec![ret(int(1))])); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_void` in this scope [INFO] [stdout] --> src/parser/mod.rs:612:41 [INFO] [stdout] | [INFO] [stdout] 612 | assert_parse!("return 1 + 1" => block_void(vec![ret(add(int(1), int(1)))])); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `ret` in this scope [INFO] [stdout] --> src/parser/mod.rs:612:57 [INFO] [stdout] | [INFO] [stdout] 612 | assert_parse!("return 1 + 1" => block_void(vec![ret(add(int(1), int(1)))])); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::ret; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:612:61 [INFO] [stdout] | [INFO] [stdout] 612 | assert_parse!("return 1 + 1" => block_void(vec![ret(add(int(1), int(1)))])); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:612:65 [INFO] [stdout] | [INFO] [stdout] 612 | assert_parse!("return 1 + 1" => block_void(vec![ret(add(int(1), int(1)))])); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:612:73 [INFO] [stdout] | [INFO] [stdout] 612 | assert_parse!("return 1 + 1" => block_void(vec![ret(add(int(1), int(1)))])); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:635:30 [INFO] [stdout] | [INFO] [stdout] 635 | assert_parse!("a" => block_expr(variable("a"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:635:41 [INFO] [stdout] | [INFO] [stdout] 635 | assert_parse!("a" => block_expr(variable("a"))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:636:32 [INFO] [stdout] | [INFO] [stdout] 636 | assert_parse!("abc" => block_expr(variable("abc"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:636:43 [INFO] [stdout] | [INFO] [stdout] 636 | assert_parse!("abc" => block_expr(variable("abc"))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:637:33 [INFO] [stdout] | [INFO] [stdout] 637 | assert_parse!("a123" => block_expr(variable("a123"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:637:44 [INFO] [stdout] | [INFO] [stdout] 637 | assert_parse!("a123" => block_expr(variable("a123"))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:638:33 [INFO] [stdout] | [INFO] [stdout] 638 | assert_parse!("_213" => block_expr(variable("_213"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:638:44 [INFO] [stdout] | [INFO] [stdout] 638 | assert_parse!("_213" => block_expr(variable("_213"))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:639:30 [INFO] [stdout] | [INFO] [stdout] 639 | assert_parse!("_" => block_expr(variable("_"))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:639:41 [INFO] [stdout] | [INFO] [stdout] 639 | assert_parse!("_" => block_expr(variable("_"))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:645:34 [INFO] [stdout] | [INFO] [stdout] 645 | assert_parse!("1 + 2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:645:45 [INFO] [stdout] | [INFO] [stdout] 645 | assert_parse!("1 + 2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:645:49 [INFO] [stdout] | [INFO] [stdout] 645 | assert_parse!("1 + 2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:645:57 [INFO] [stdout] | [INFO] [stdout] 645 | assert_parse!("1 + 2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:646:32 [INFO] [stdout] | [INFO] [stdout] 646 | assert_parse!("1+2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:646:43 [INFO] [stdout] | [INFO] [stdout] 646 | assert_parse!("1+2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:646:47 [INFO] [stdout] | [INFO] [stdout] 646 | assert_parse!("1+2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:646:55 [INFO] [stdout] | [INFO] [stdout] 646 | assert_parse!("1+2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:647:34 [INFO] [stdout] | [INFO] [stdout] 647 | assert_parse!("1 + a" => block_expr(add(int(1), variable("a")))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:647:45 [INFO] [stdout] | [INFO] [stdout] 647 | assert_parse!("1 + a" => block_expr(add(int(1), variable("a")))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:647:49 [INFO] [stdout] | [INFO] [stdout] 647 | assert_parse!("1 + a" => block_expr(add(int(1), variable("a")))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:647:57 [INFO] [stdout] | [INFO] [stdout] 647 | assert_parse!("1 + a" => block_expr(add(int(1), variable("a")))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:648:34 [INFO] [stdout] | [INFO] [stdout] 648 | assert_parse!("a + 2" => block_expr(add(variable("a"), int(2)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:648:45 [INFO] [stdout] | [INFO] [stdout] 648 | assert_parse!("a + 2" => block_expr(add(variable("a"), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:648:49 [INFO] [stdout] | [INFO] [stdout] 648 | assert_parse!("a + 2" => block_expr(add(variable("a"), int(2)))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:648:64 [INFO] [stdout] | [INFO] [stdout] 648 | assert_parse!("a + 2" => block_expr(add(variable("a"), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:649:34 [INFO] [stdout] | [INFO] [stdout] 649 | assert_parse!("a + b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:649:45 [INFO] [stdout] | [INFO] [stdout] 649 | assert_parse!("a + b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:649:49 [INFO] [stdout] | [INFO] [stdout] 649 | assert_parse!("a + b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:649:64 [INFO] [stdout] | [INFO] [stdout] 649 | assert_parse!("a + b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:650:32 [INFO] [stdout] | [INFO] [stdout] 650 | assert_parse!("a+b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:650:43 [INFO] [stdout] | [INFO] [stdout] 650 | assert_parse!("a+b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:650:47 [INFO] [stdout] | [INFO] [stdout] 650 | assert_parse!("a+b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:650:62 [INFO] [stdout] | [INFO] [stdout] 650 | assert_parse!("a+b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:651:34 [INFO] [stdout] | [INFO] [stdout] 651 | assert_parse!("1 - 2" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `sub` in this scope [INFO] [stdout] --> src/parser/mod.rs:651:45 [INFO] [stdout] | [INFO] [stdout] 651 | assert_parse!("1 - 2" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:651:49 [INFO] [stdout] | [INFO] [stdout] 651 | assert_parse!("1 - 2" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:651:57 [INFO] [stdout] | [INFO] [stdout] 651 | assert_parse!("1 - 2" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:652:36 [INFO] [stdout] | [INFO] [stdout] 652 | assert_parse!("(1 - 2)" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `sub` in this scope [INFO] [stdout] --> src/parser/mod.rs:652:47 [INFO] [stdout] | [INFO] [stdout] 652 | assert_parse!("(1 - 2)" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:652:51 [INFO] [stdout] | [INFO] [stdout] 652 | assert_parse!("(1 - 2)" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:652:59 [INFO] [stdout] | [INFO] [stdout] 652 | assert_parse!("(1 - 2)" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:653:38 [INFO] [stdout] | [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:653:49 [INFO] [stdout] | [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:653:53 [INFO] [stdout] | [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:653:61 [INFO] [stdout] | [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:653:65 [INFO] [stdout] | [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:653:73 [INFO] [stdout] | [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:654:38 [INFO] [stdout] | [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:654:49 [INFO] [stdout] | [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:654:53 [INFO] [stdout] | [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:654:57 [INFO] [stdout] | [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:654:65 [INFO] [stdout] | [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:654:74 [INFO] [stdout] | [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:655:34 [INFO] [stdout] | [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `add` in this scope [INFO] [stdout] --> src/parser/mod.rs:655:45 [INFO] [stdout] | [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:655:49 [INFO] [stdout] | [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:655:53 [INFO] [stdout] | [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:655:61 [INFO] [stdout] | [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:655:70 [INFO] [stdout] | [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:657:40 [INFO] [stdout] | [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:657:51 [INFO] [stdout] | [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:657:55 [INFO] [stdout] | [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `sub` in this scope [INFO] [stdout] --> src/parser/mod.rs:657:63 [INFO] [stdout] | [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:657:67 [INFO] [stdout] | [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:657:75 [INFO] [stdout] | [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:658:40 [INFO] [stdout] | [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `sub` in this scope [INFO] [stdout] --> src/parser/mod.rs:658:51 [INFO] [stdout] | [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:658:55 [INFO] [stdout] | [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:658:63 [INFO] [stdout] | [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:658:67 [INFO] [stdout] | [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:658:75 [INFO] [stdout] | [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:659:36 [INFO] [stdout] | [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `sub` in this scope [INFO] [stdout] --> src/parser/mod.rs:659:47 [INFO] [stdout] | [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:659:51 [INFO] [stdout] | [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:659:59 [INFO] [stdout] | [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:659:63 [INFO] [stdout] | [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:659:71 [INFO] [stdout] | [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:660:38 [INFO] [stdout] | [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `sub` in this scope [INFO] [stdout] --> src/parser/mod.rs:660:49 [INFO] [stdout] | [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:660:53 [INFO] [stdout] | [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `mul` in this scope [INFO] [stdout] --> src/parser/mod.rs:660:61 [INFO] [stdout] | [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:660:65 [INFO] [stdout] | [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:660:73 [INFO] [stdout] | [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:661:38 [INFO] [stdout] | [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `pow` in this scope [INFO] [stdout] --> src/parser/mod.rs:661:49 [INFO] [stdout] | [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:661:53 [INFO] [stdout] | [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `pow` in this scope [INFO] [stdout] --> src/parser/mod.rs:661:61 [INFO] [stdout] | [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:661:65 [INFO] [stdout] | [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `int` in this scope [INFO] [stdout] --> src/parser/mod.rs:661:73 [INFO] [stdout] | [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 532 | use lexer::tests::int; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `block_expr` in this scope [INFO] [stdout] --> src/parser/mod.rs:662:34 [INFO] [stdout] | [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `pow` in this scope [INFO] [stdout] --> src/parser/mod.rs:662:45 [INFO] [stdout] | [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:662:49 [INFO] [stdout] | [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `pow` in this scope [INFO] [stdout] --> src/parser/mod.rs:662:64 [INFO] [stdout] | [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:662:68 [INFO] [stdout] | [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `variable` in this scope [INFO] [stdout] --> src/parser/mod.rs:662:83 [INFO] [stdout] | [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/codegen/mod.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TYPE_VOID` [INFO] [stdout] --> src/codegen/mod.rs:7:48 [INFO] [stdout] | [INFO] [stdout] 7 | use types::{TypedExpr, TYPE_ANY, TYPE_INTEGER, TYPE_VOID}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parser::ast::Expr` [INFO] [stdout] --> src/codegen/any.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use parser::ast::Expr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/codegen/any.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TYPE_ANY`, `TYPE_INTEGER` [INFO] [stdout] --> src/codegen/any.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use types::{TYPE_ANY, TYPE_INTEGER}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `env_logger` is imported redundantly [INFO] [stdout] --> src/lexer/mod.rs:391:13 [INFO] [stdout] | [INFO] [stdout] 391 | use env_logger; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/main.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | extern crate env_logger; [INFO] [stdout] | ------------------------ the item `env_logger` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `Expr` [INFO] [stdout] --> src/parser/mod.rs:535:35 [INFO] [stdout] | [INFO] [stdout] 535 | use parser::ast::{helpers::*, Block, Expr, Prototype, TopLevelStatement}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `failure::Error` [INFO] [stdout] --> src/types.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use failure::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/types.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/mod.rs:374:29 [INFO] [stdout] | [INFO] [stdout] 374 | ty: Some(FunctionType { [INFO] [stdout] | _____________________________^ [INFO] [stdout] 375 | | args: vec![], [INFO] [stdout] 376 | | ret: ty, [INFO] [stdout] 377 | | }), [INFO] [stdout] | |__________________________^ expected struct `types::FunctionType`, found enum `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `types::FunctionType` [INFO] [stdout] found enum `Option` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/mod.rs:410:25 [INFO] [stdout] | [INFO] [stdout] 410 | ty: Some(FunctionType { [INFO] [stdout] | _________________________^ [INFO] [stdout] 411 | | args: arg_types, [INFO] [stdout] 412 | | ret: ty, [INFO] [stdout] 413 | | }), [INFO] [stdout] | |______________________^ expected struct `types::FunctionType`, found enum `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `types::FunctionType` [INFO] [stdout] found enum `Option` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 9 previous errors; 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0425. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `ruoscript` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0277]: `types::FunctionType` is not an iterator [INFO] [stdout] --> src/codegen/mod.rs:96:81 [INFO] [stdout] | [INFO] [stdout] 96 | for (arg, arg_name) in params.iter().zip(proto.args.iter()).zip(proto.ty.) { [INFO] [stdout] | ^^^^^^^^ `types::FunctionType` is not an iterator [INFO] [stdout] | [INFO] [stdout] = help: the trait `Iterator` is not implemented for `types::FunctionType` [INFO] [stdout] = note: required because of the requirements on the impl of `IntoIterator` for `types::FunctionType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `types::FunctionType` is not an iterator [INFO] [stdout] --> src/codegen/mod.rs:96:40 [INFO] [stdout] | [INFO] [stdout] 96 | for (arg, arg_name) in params.iter().zip(proto.args.iter()).zip(proto.ty.) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `types::FunctionType` is not an iterator [INFO] [stdout] | [INFO] [stdout] = help: the trait `Iterator` is not implemented for `types::FunctionType` [INFO] [stdout] = note: required because of the requirements on the impl of `Iterator` for `Zip, std::slice::Iter<'_, String>>, types::FunctionType>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> src/codegen/mod.rs:97:43 [INFO] [stdout] | [INFO] [stdout] 97 | let allocated_value = core::LLVMBuildAlloca(ctx.builder, ) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ----------- supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 3 arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/codegen/mod.rs:100:52 [INFO] [stdout] | [INFO] [stdout] 100 | .insert(arg_name.clone(), (arg.clone(), TYPE_ANY.to_string())); [INFO] [stdout] | ^^^^^^^^^^^ expected *-ptr, found tuple [INFO] [stdout] | [INFO] [stdout] = note: expected raw pointer `*mut LLVMValue` [INFO] [stdout] found tuple `(&*mut LLVMValue, &String)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/mod.rs:374:29 [INFO] [stdout] | [INFO] [stdout] 374 | ty: Some(FunctionType { [INFO] [stdout] | _____________________________^ [INFO] [stdout] 375 | | args: vec![], [INFO] [stdout] 376 | | ret: ty, [INFO] [stdout] 377 | | }), [INFO] [stdout] | |__________________________^ expected struct `types::FunctionType`, found enum `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `types::FunctionType` [INFO] [stdout] found enum `Option` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser/mod.rs:410:25 [INFO] [stdout] | [INFO] [stdout] 410 | ty: Some(FunctionType { [INFO] [stdout] | _________________________^ [INFO] [stdout] 411 | | args: arg_types, [INFO] [stdout] 412 | | ret: ty, [INFO] [stdout] 413 | | }), [INFO] [stdout] | |______________________^ expected struct `types::FunctionType`, found enum `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `types::FunctionType` [INFO] [stdout] found enum `Option` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 575 | assert_parse!("" => block_void(vec![])); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 581 | assert_parse!("123" => block_expr(int(123))); [INFO] [stdout] | --------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 582 | assert_parse!("0" => block_expr(int(0))); [INFO] [stdout] | ----------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 583 | assert_parse!("1" => block_expr(int(1))); [INFO] [stdout] | ----------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 584 | assert_parse!("3_000_000" => block_expr(int(3_000_000))); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 585 | assert_parse!("3000000" => block_expr(int(3_000_000))); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 591 | assert_parse!("''" => block_expr(string(""))); [INFO] [stdout] | ---------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 592 | assert_parse!("\"\"" => block_expr(string(""))); [INFO] [stdout] | ------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 593 | assert_parse!("'some string'" => block_expr(string("some string"))); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 594 | assert_parse!("\"some string\"" => block_expr(string("some string"))); [INFO] [stdout] | ---------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 600 | / assert_parse!("var i = 1" => block_void(vec![ [INFO] [stdout] 601 | | var_declaration("i", int(1)) [INFO] [stdout] 602 | | ])); [INFO] [stdout] | |____________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 603 | / assert_parse!("var string = \"string\"" => block_void(vec![ [INFO] [stdout] 604 | | var_declaration("string", string("string")) [INFO] [stdout] 605 | | ])); [INFO] [stdout] | |____________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 611 | assert_parse!("return 1" => block_void(vec![ret(int(1))])); [INFO] [stdout] | ----------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 612 | assert_parse!("return 1 + 1" => block_void(vec![ret(add(int(1), int(1)))])); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 635 | assert_parse!("a" => block_expr(variable("a"))); [INFO] [stdout] | ------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 636 | assert_parse!("abc" => block_expr(variable("abc"))); [INFO] [stdout] | ---------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 637 | assert_parse!("a123" => block_expr(variable("a123"))); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 638 | assert_parse!("_213" => block_expr(variable("_213"))); [INFO] [stdout] | ------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 639 | assert_parse!("_" => block_expr(variable("_"))); [INFO] [stdout] | ------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 645 | assert_parse!("1 + 2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | ---------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 646 | assert_parse!("1+2" => block_expr(add(int(1), int(2)))); [INFO] [stdout] | -------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 647 | assert_parse!("1 + a" => block_expr(add(int(1), variable("a")))); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 648 | assert_parse!("a + 2" => block_expr(add(variable("a"), int(2)))); [INFO] [stdout] | ----------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 649 | assert_parse!("a + b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 650 | assert_parse!("a+b" => block_expr(add(variable("a"), variable("b")))); [INFO] [stdout] | ---------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 651 | assert_parse!("1 - 2" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ---------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 652 | assert_parse!("(1 - 2)" => block_expr(sub(int(1), int(2)))); [INFO] [stdout] | ------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 653 | assert_parse!("1 + 3 * 4" => block_expr(add(int(1), mul(int(3), int(4))))); [INFO] [stdout] | --------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 654 | assert_parse!("1 * 3 + 4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | --------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 655 | assert_parse!("1*3+4" => block_expr(add(mul(int(1), int(3)), int(4)))); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 657 | assert_parse!("3 * (8 - 5)" => block_expr(mul(int(3), sub(int(8), int(5))))); [INFO] [stdout] | ----------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 658 | assert_parse!("3 - (8 * 5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ----------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 659 | assert_parse!("3-(8*5)" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | ------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 660 | assert_parse!("3 - 8 * 5" => block_expr(sub(int(3), mul(int(8), int(5))))); [INFO] [stdout] | --------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 661 | assert_parse!("2 ^ 3 ^ 4" => block_expr(pow(int(2), pow(int(3), int(4))))); [INFO] [stdout] | --------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0027]: pattern does not mention field `ty` [INFO] [stdout] --> src/parser/mod.rs:554:45 [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args }, ref block) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `ty` [INFO] [stdout] ... [INFO] [stdout] 662 | assert_parse!("a^b^c" => block_expr(pow(variable("a"), pow(variable("b"), variable("c"))))); [INFO] [stdout] | -------------------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: include the missing field in the pattern [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, ty }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] help: if you don't care about this missing field, you can explicitely ignore it [INFO] [stdout] | [INFO] [stdout] 554 | TopLevelStatement::Function(Prototype { ref name, ref args, .. }, ref block) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 176 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0027, E0061, E0277, E0308, E0425, E0432. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0027`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "ee893d68fe5562973a74e81cf5b3c8f0b872721647df2b9cf98e1eb48b01ef70", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ee893d68fe5562973a74e81cf5b3c8f0b872721647df2b9cf98e1eb48b01ef70", kill_on_drop: false }` [INFO] [stdout] ee893d68fe5562973a74e81cf5b3c8f0b872721647df2b9cf98e1eb48b01ef70