[INFO] cloning repository https://github.com/nilern/Kyy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nilern/Kyy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnilern%2FKyy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnilern%2FKyy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 79135882df2f28a70a2fe875b7b3c0421066243f [INFO] checking nilern/Kyy against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnilern%2FKyy" "/workspace/builds/worker-1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/nilern/Kyy on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/nilern/Kyy [INFO] finished tweaking git repo https://github.com/nilern/Kyy [INFO] tweaked toml for git repo https://github.com/nilern/Kyy written to /workspace/builds/worker-1/source/Cargo.toml [INFO] crate git repo https://github.com/nilern/Kyy already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 95256ad501131115e3a2117591063c7b81469296eb9f4892299e1887631a4a83 [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" "95256ad501131115e3a2117591063c7b81469296eb9f4892299e1887631a4a83", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "95256ad501131115e3a2117591063c7b81469296eb9f4892299e1887631a4a83", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "95256ad501131115e3a2117591063c7b81469296eb9f4892299e1887631a4a83", kill_on_drop: false }` [INFO] [stdout] 95256ad501131115e3a2117591063c7b81469296eb9f4892299e1887631a4a83 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 48c8a2c7eb81a608d6d0576e6edaf33c9fc51064cd6aa1fa436c8ad7865f2167 [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" "48c8a2c7eb81a608d6d0576e6edaf33c9fc51064cd6aa1fa436c8ad7865f2167", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.80 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling nix v0.18.0 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking unicode-width v0.1.8 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Checking intrusive-collections v0.9.0 [INFO] [stderr] Checking dirs-sys-next v0.1.1 [INFO] [stderr] Checking dirs-next v1.0.2 [INFO] [stderr] Checking rustyline v6.3.0 [INFO] [stderr] Checking kyy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:68:41 [INFO] [stdout] | [INFO] [stdout] 68 | Ok(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(chars))), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:72:41 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(Box::new(tokens.spanning(Expr::Const(Int::new(km, Int(n)).as_obj()), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:76:41 [INFO] [stdout] | [INFO] [stdout] 76 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_true().as_obj()), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:80:41 [INFO] [stdout] | [INFO] [stdout] 80 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_false().as_obj()), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:96:46 [INFO] [stdout] | [INFO] [stdout] 96 | l = Box::new(tokens.spanning(Expr::Mul(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:102:46 [INFO] [stdout] | [INFO] [stdout] 102 | l = Box::new(tokens.spanning(Expr::Div(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:68:41 [INFO] [stdout] | [INFO] [stdout] 68 | Ok(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(chars))), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:119:46 [INFO] [stdout] | [INFO] [stdout] 119 | l = Box::new(tokens.spanning(Expr::Add(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:72:41 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(Box::new(tokens.spanning(Expr::Const(Int::new(km, Int(n)).as_obj()), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:125:46 [INFO] [stdout] | [INFO] [stdout] 125 | l = Box::new(tokens.spanning(Expr::Sub(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:76:41 [INFO] [stdout] | [INFO] [stdout] 76 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_true().as_obj()), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:143:46 [INFO] [stdout] | [INFO] [stdout] 143 | l = Box::new(tokens.spanning(Expr::Lt(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:149:46 [INFO] [stdout] | [INFO] [stdout] 149 | l = Box::new(tokens.spanning(Expr::Le(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:80:41 [INFO] [stdout] | [INFO] [stdout] 80 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_false().as_obj()), tok.span))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:155:46 [INFO] [stdout] | [INFO] [stdout] 155 | l = Box::new(tokens.spanning(Expr::Eq(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:96:46 [INFO] [stdout] | [INFO] [stdout] 96 | l = Box::new(tokens.spanning(Expr::Mul(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:102:46 [INFO] [stdout] | [INFO] [stdout] 102 | l = Box::new(tokens.spanning(Expr::Div(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:161:46 [INFO] [stdout] | [INFO] [stdout] 161 | l = Box::new(tokens.spanning(Expr::Ne(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:167:46 [INFO] [stdout] | [INFO] [stdout] 167 | l = Box::new(tokens.spanning(Expr::Gt(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:173:46 [INFO] [stdout] | [INFO] [stdout] 173 | l = Box::new(tokens.spanning(Expr::Ge(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:225:23 [INFO] [stdout] | [INFO] [stdout] 225 | return Ok(Stmt::If {condition, conseq, alt}); [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:119:46 [INFO] [stdout] | [INFO] [stdout] 119 | l = Box::new(tokens.spanning(Expr::Add(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:125:46 [INFO] [stdout] | [INFO] [stdout] 125 | l = Box::new(tokens.spanning(Expr::Sub(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:234:24 [INFO] [stdout] | [INFO] [stdout] 234 | Ok(Stmt::Assign(String::from(name), rvalue)) [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:236:25 [INFO] [stdout] | [INFO] [stdout] 236 | _ => Ok(Stmt::Expr(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(name))), id.span)))) [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:236:61 [INFO] [stdout] | [INFO] [stdout] 236 | _ => Ok(Stmt::Expr(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(name))), id.span)))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:143:46 [INFO] [stdout] | [INFO] [stdout] 143 | l = Box::new(tokens.spanning(Expr::Lt(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:240:62 [INFO] [stdout] | [INFO] [stdout] 240 | Token::Integer(_) | Token::True | Token::False => Ok(Stmt::Expr(expr(km, tokens)?)), [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | Expr::Add(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | Expr::Sub(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | Expr::Mul(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | Expr::Div(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | Expr::Lt(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | Expr::Le(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | Expr::Eq(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | Expr::Ne(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | Expr::Gt(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | Expr::Ge(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | Expr::Var(ref name) => match env.get(&**name) { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | Expr::Const(ref c) => Ok(c.clone()) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:149:46 [INFO] [stdout] | [INFO] [stdout] 149 | l = Box::new(tokens.spanning(Expr::Le(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:155:46 [INFO] [stdout] | [INFO] [stdout] 155 | l = Box::new(tokens.spanning(Expr::Eq(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:161:46 [INFO] [stdout] | [INFO] [stdout] 161 | l = Box::new(tokens.spanning(Expr::Ne(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:167:46 [INFO] [stdout] | [INFO] [stdout] 167 | l = Box::new(tokens.spanning(Expr::Gt(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:173:46 [INFO] [stdout] | [INFO] [stdout] 173 | l = Box::new(tokens.spanning(Expr::Ge(l, r), span)); [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:225:23 [INFO] [stdout] | [INFO] [stdout] 225 | return Ok(Stmt::If {condition, conseq, alt}); [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/mutator.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 248 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem::size_of` [INFO] [stdout] --> src/mutator.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 250 | use std::mem::size_of; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/ast.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::lexer::Spanning` [INFO] [stdout] --> src/ast.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::lexer::Spanning; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Root` [INFO] [stdout] --> src/ast.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use super::orefs::{Root, Gc}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:234:24 [INFO] [stdout] | [INFO] [stdout] 234 | Ok(Stmt::Assign(String::from(name), rvalue)) [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::ast` [INFO] [stdout] --> src/parser.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:236:25 [INFO] [stdout] | [INFO] [stdout] 236 | _ => Ok(Stmt::Expr(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(name))), id.span)))) [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/parser.rs:236:61 [INFO] [stdout] | [INFO] [stdout] 236 | _ => Ok(Stmt::Expr(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(name))), id.span)))) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Stmt` [INFO] [stdout] --> src/parser.rs:240:62 [INFO] [stdout] | [INFO] [stdout] 240 | Token::Integer(_) | Token::True | Token::False => Ok(Stmt::Expr(expr(km, tokens)?)), [INFO] [stdout] | ^^^^ use of undeclared type `Stmt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | Expr::Add(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | Expr::Sub(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | Expr::Mul(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | Expr::Div(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | Expr::Lt(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | Expr::Le(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | Expr::Eq(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | Expr::Ne(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | Expr::Gt(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | Expr::Ge(ref l, ref r) => { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:102:9 [INFO] [stdout] | [INFO] [stdout] 102 | Expr::Var(ref name) => match env.get(&**name) { [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expr` [INFO] [stdout] --> src/eval.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | Expr::Const(ref c) => Ok(c.clone()) [INFO] [stdout] | ^^^^ use of undeclared type `Expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `KyyMutator` [INFO] [stdout] --> src/int.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use super::mutator::{KyySizedBytesType, KyyMutator}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/ast.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::lexer::Spanning` [INFO] [stdout] --> src/ast.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::lexer::Spanning; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Root` [INFO] [stdout] --> src/ast.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use super::orefs::{Root, Gc}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::ast` [INFO] [stdout] --> src/parser.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::ast; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | Ok(ref stmt) => match exec(&mut km, &mut env, stmt) { [INFO] [stdout] | ^^^^ expected struct `Root`, found reference [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found reference `&Root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | Ok(ref stmt) => match exec(&mut km, &mut env, stmt) { [INFO] [stdout] | ^^^^ expected struct `Root`, found `&Root` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found reference `&Root` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:68:16 [INFO] [stdout] | [INFO] [stdout] 68 | Ok(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(chars))), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:72:16 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(Box::new(tokens.spanning(Expr::Const(Int::new(km, Int(n)).as_obj()), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:68:16 [INFO] [stdout] | [INFO] [stdout] 68 | Ok(Box::new(tokens.spanning(Expr::Var(Arc::new(String::from(chars))), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_true().as_obj()), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:72:16 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(Box::new(tokens.spanning(Expr::Const(Int::new(km, Int(n)).as_obj()), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:80:16 [INFO] [stdout] | [INFO] [stdout] 80 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_false().as_obj()), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:95:30 [INFO] [stdout] | [INFO] [stdout] 95 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:95:44 [INFO] [stdout] | [INFO] [stdout] 95 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:76:16 [INFO] [stdout] | [INFO] [stdout] 76 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_true().as_obj()), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:96:21 [INFO] [stdout] | [INFO] [stdout] 96 | l = Box::new(tokens.spanning(Expr::Mul(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:101:30 [INFO] [stdout] | [INFO] [stdout] 101 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:101:44 [INFO] [stdout] | [INFO] [stdout] 101 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:80:16 [INFO] [stdout] | [INFO] [stdout] 80 | Ok(Box::new(tokens.spanning(Expr::Const(km.the_false().as_obj()), tok.span))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:95:30 [INFO] [stdout] | [INFO] [stdout] 95 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:95:44 [INFO] [stdout] | [INFO] [stdout] 95 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:102:21 [INFO] [stdout] | [INFO] [stdout] 102 | l = Box::new(tokens.spanning(Expr::Div(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:118:30 [INFO] [stdout] | [INFO] [stdout] 118 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:118:44 [INFO] [stdout] | [INFO] [stdout] 118 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:119:21 [INFO] [stdout] | [INFO] [stdout] 119 | l = Box::new(tokens.spanning(Expr::Add(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:124:30 [INFO] [stdout] | [INFO] [stdout] 124 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:124:44 [INFO] [stdout] | [INFO] [stdout] 124 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:96:21 [INFO] [stdout] | [INFO] [stdout] 96 | l = Box::new(tokens.spanning(Expr::Mul(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:101:30 [INFO] [stdout] | [INFO] [stdout] 101 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:101:44 [INFO] [stdout] | [INFO] [stdout] 101 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:102:21 [INFO] [stdout] | [INFO] [stdout] 102 | l = Box::new(tokens.spanning(Expr::Div(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:118:30 [INFO] [stdout] | [INFO] [stdout] 118 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:125:21 [INFO] [stdout] | [INFO] [stdout] 125 | l = Box::new(tokens.spanning(Expr::Sub(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:118:44 [INFO] [stdout] | [INFO] [stdout] 118 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:142:30 [INFO] [stdout] | [INFO] [stdout] 142 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:142:44 [INFO] [stdout] | [INFO] [stdout] 142 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:119:21 [INFO] [stdout] | [INFO] [stdout] 119 | l = Box::new(tokens.spanning(Expr::Add(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:124:30 [INFO] [stdout] | [INFO] [stdout] 124 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:124:44 [INFO] [stdout] | [INFO] [stdout] 124 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:143:21 [INFO] [stdout] | [INFO] [stdout] 143 | l = Box::new(tokens.spanning(Expr::Lt(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:148:30 [INFO] [stdout] | [INFO] [stdout] 148 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:148:44 [INFO] [stdout] | [INFO] [stdout] 148 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:125:21 [INFO] [stdout] | [INFO] [stdout] 125 | l = Box::new(tokens.spanning(Expr::Sub(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:142:30 [INFO] [stdout] | [INFO] [stdout] 142 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:142:44 [INFO] [stdout] | [INFO] [stdout] 142 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:143:21 [INFO] [stdout] | [INFO] [stdout] 143 | l = Box::new(tokens.spanning(Expr::Lt(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | l = Box::new(tokens.spanning(Expr::Le(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:148:30 [INFO] [stdout] | [INFO] [stdout] 148 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:154:30 [INFO] [stdout] | [INFO] [stdout] 154 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:148:44 [INFO] [stdout] | [INFO] [stdout] 148 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:154:44 [INFO] [stdout] | [INFO] [stdout] 154 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:155:21 [INFO] [stdout] | [INFO] [stdout] 155 | l = Box::new(tokens.spanning(Expr::Eq(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:160:30 [INFO] [stdout] | [INFO] [stdout] 160 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:160:44 [INFO] [stdout] | [INFO] [stdout] 160 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:149:21 [INFO] [stdout] | [INFO] [stdout] 149 | l = Box::new(tokens.spanning(Expr::Le(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:154:30 [INFO] [stdout] | [INFO] [stdout] 154 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:154:44 [INFO] [stdout] | [INFO] [stdout] 154 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:161:21 [INFO] [stdout] | [INFO] [stdout] 161 | l = Box::new(tokens.spanning(Expr::Ne(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:166:44 [INFO] [stdout] | [INFO] [stdout] 166 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:155:21 [INFO] [stdout] | [INFO] [stdout] 155 | l = Box::new(tokens.spanning(Expr::Eq(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:160:30 [INFO] [stdout] | [INFO] [stdout] 160 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:160:44 [INFO] [stdout] | [INFO] [stdout] 160 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:167:21 [INFO] [stdout] | [INFO] [stdout] 167 | l = Box::new(tokens.spanning(Expr::Gt(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:172:30 [INFO] [stdout] | [INFO] [stdout] 172 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:172:44 [INFO] [stdout] | [INFO] [stdout] 172 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:161:21 [INFO] [stdout] | [INFO] [stdout] 161 | l = Box::new(tokens.spanning(Expr::Ne(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:166:44 [INFO] [stdout] | [INFO] [stdout] 166 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | l = Box::new(tokens.spanning(Expr::Ge(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:167:21 [INFO] [stdout] | [INFO] [stdout] 167 | l = Box::new(tokens.spanning(Expr::Gt(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:172:30 [INFO] [stdout] | [INFO] [stdout] 172 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `span` on type `Root` [INFO] [stdout] --> src/parser.rs:172:44 [INFO] [stdout] | [INFO] [stdout] 172 | let span = l.span.start..r.span.end; [INFO] [stdout] | ^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | l = Box::new(tokens.spanning(Expr::Ge(l, r), span)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Root`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Root` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:202:23 [INFO] [stdout] | [INFO] [stdout] 202 | Ok(Tuple::new(km, &stmts)) [INFO] [stdout] | ^^^^^^ expected slice, found struct `Vec` [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&[Gc]` [INFO] [stdout] found reference `&Vec>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `value` on type `Root` [INFO] [stdout] --> src/eval.rs:49:26 [INFO] [stdout] | [INFO] [stdout] 49 | let res = match expr.value { [INFO] [stdout] | ^^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `here` found for struct `Root` in the current scope [INFO] [stdout] --> src/eval.rs:109:28 [INFO] [stdout] | [INFO] [stdout] 109 | res.map_err(|err| expr.here(err)) [INFO] [stdout] | ^^^^ method not found in `Root` [INFO] [stdout] | [INFO] [stdout] ::: src/orefs.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct Root(Rc>>); [INFO] [stdout] | ------------------------------------ method `here` not found for this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/parser.rs:202:23 [INFO] [stdout] | [INFO] [stdout] 202 | Ok(Tuple::new(km, &stmts)) [INFO] [stdout] | ^^^^^^ expected slice, found struct `Vec` [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&[orefs::Gc]` [INFO] [stdout] found reference `&Vec>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 69 previous errors; 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0433, E0599, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `kyy` [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[E0609]: no field `value` on type `Root` [INFO] [stdout] --> src/eval.rs:49:26 [INFO] [stdout] | [INFO] [stdout] 49 | let res = match expr.value { [INFO] [stdout] | ^^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `here` found for struct `Root` in the current scope [INFO] [stdout] --> src/eval.rs:109:28 [INFO] [stdout] | [INFO] [stdout] 109 | res.map_err(|err| expr.here(err)) [INFO] [stdout] | ^^^^ method not found in `Root` [INFO] [stdout] | [INFO] [stdout] ::: src/orefs.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct Root(Rc>>); [INFO] [stdout] | ------------------------------------ method `here` not found for this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 69 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0433, E0599, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "48c8a2c7eb81a608d6d0576e6edaf33c9fc51064cd6aa1fa436c8ad7865f2167", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "48c8a2c7eb81a608d6d0576e6edaf33c9fc51064cd6aa1fa436c8ad7865f2167", kill_on_drop: false }` [INFO] [stdout] 48c8a2c7eb81a608d6d0576e6edaf33c9fc51064cd6aa1fa436c8ad7865f2167