[INFO] cloning repository https://github.com/itarato/langtwo [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/itarato/langtwo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fitarato%2Flangtwo", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fitarato%2Flangtwo'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] be6a7ee4c83d5d78fb0481370899058bfd3dfdc2 [INFO] testing itarato/langtwo against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fitarato%2Flangtwo" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/itarato/langtwo [INFO] finished tweaking git repo https://github.com/itarato/langtwo [INFO] tweaked toml for git repo https://github.com/itarato/langtwo written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/itarato/langtwo on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/itarato/langtwo already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded aho-corasick v1.0.5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] db780cbc7c198e154cf36fba73c675f15ca7d1032f1f6cede46f3657b619cc50 [INFO] running `Command { std: "docker" "start" "-a" "db780cbc7c198e154cf36fba73c675f15ca7d1032f1f6cede46f3657b619cc50", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "db780cbc7c198e154cf36fba73c675f15ca7d1032f1f6cede46f3657b619cc50", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "db780cbc7c198e154cf36fba73c675f15ca7d1032f1f6cede46f3657b619cc50", kill_on_drop: false }` [INFO] [stdout] db780cbc7c198e154cf36fba73c675f15ca7d1032f1f6cede46f3657b619cc50 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 6f3b19041901da15cd74b83f0b55fa09178e3aedc6a488ea8aba2a4548585627 [INFO] running `Command { std: "docker" "start" "-a" "6f3b19041901da15cd74b83f0b55fa09178e3aedc6a488ea8aba2a4548585627", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.6.3 [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling termcolor v1.2.0 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling aho-corasick v1.0.5 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling regex-automata v0.3.8 [INFO] [stderr] Compiling regex v1.9.5 [INFO] [stderr] Compiling env_logger v0.7.1 [INFO] [stderr] Compiling pretty_env_logger v0.4.0 [INFO] [stderr] Compiling langtwo v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/ir_builder.rs:175:26 [INFO] [stdout] | [INFO] [stdout] 175 | AstExpr::Str(s) => unimplemented!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Eq`, `NotEq`, `Lt`, `Lte`, `Gt`, and `Gte` are never constructed [INFO] [stdout] --> src/ir.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum CondResult { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 21 | Eq, [INFO] [stdout] | ^^ [INFO] [stdout] 22 | NotEq, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 23 | Lt, [INFO] [stdout] | ^^ [INFO] [stdout] 24 | Lte, [INFO] [stdout] | ^^^ [INFO] [stdout] 25 | Gt, [INFO] [stdout] | ^^ [INFO] [stdout] 26 | Gte, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CondResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/ir.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub enum Operation { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 37 | PushI(i32), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | AddI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | SubI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | MulI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | DivI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | Load { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | LoadAI { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | LoadAO { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | Store { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | StoreAI { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | StoreAO { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | Ci2i { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | Jump(Reg), [INFO] [stdout] | ^^^^ [INFO] [stdout] 129 | [INFO] [stdout] 130 | Tbl { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | CmpNotEq { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | Comp { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Operation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `instructions` and `return_reg` are never read [INFO] [stdout] --> src/ir.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct IR { [INFO] [stdout] | -- fields in this struct [INFO] [stdout] 181 | pub instructions: Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 182 | pub return_reg: Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IR` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_eof` is never used [INFO] [stdout] --> src/source_reader.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub trait SourceReader<'a> { [INFO] [stdout] | ------------ method in this trait [INFO] [stdout] 2 | fn is_eof(&self) -> bool; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_SIZE` is never used [INFO] [stdout] --> src/vm.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const STACK_SIZE: usize = 256; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Scope` is never constructed [INFO] [stdout] --> src/vm.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Scope { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/vm.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Scope { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 12 | fn new() -> Scope { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VM` is never constructed [INFO] [stdout] --> src/vm.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct VM { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `run`, `reg_set`, and `reg_get` are never used [INFO] [stdout] --> src/vm.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl VM { [INFO] [stdout] | ------- associated items in this implementation [INFO] [stdout] 30 | pub fn new(ir: IR) -> VM { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn run(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | fn reg_set(&mut self, reg: Reg, value: i32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | fn reg_get(&self, reg: &Reg) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:355:13 [INFO] [stdout] | [INFO] [stdout] 355 | fn peek(&self) -> Option<&Lexeme> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 355 | fn peek(&self) -> Option<&Lexeme<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:359:14 [INFO] [stdout] | [INFO] [stdout] 359 | fn peekn(&self, n: usize) -> Option<&Lexeme> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 359 | fn peekn(&self, n: usize) -> Option<&Lexeme<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source_reader.rs:15:25 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(source: &'a str) -> StrReader { [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(source: &'a str) -> StrReader<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.06s [INFO] running `Command { std: "docker" "inspect" "6f3b19041901da15cd74b83f0b55fa09178e3aedc6a488ea8aba2a4548585627", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6f3b19041901da15cd74b83f0b55fa09178e3aedc6a488ea8aba2a4548585627", kill_on_drop: false }` [INFO] [stdout] 6f3b19041901da15cd74b83f0b55fa09178e3aedc6a488ea8aba2a4548585627 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 4179e596686909e973cef8cab0efd6de55b61f022e7d38dd08b194c4168e956c [INFO] running `Command { std: "docker" "start" "-a" "4179e596686909e973cef8cab0efd6de55b61f022e7d38dd08b194c4168e956c", kill_on_drop: false }` [INFO] [stderr] Compiling langtwo v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/ir_builder.rs:175:26 [INFO] [stdout] | [INFO] [stdout] 175 | AstExpr::Str(s) => unimplemented!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Eq`, `NotEq`, `Lt`, `Lte`, `Gt`, and `Gte` are never constructed [INFO] [stdout] --> src/ir.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 20 | pub enum CondResult { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 21 | Eq, [INFO] [stdout] | ^^ [INFO] [stdout] 22 | NotEq, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 23 | Lt, [INFO] [stdout] | ^^ [INFO] [stdout] 24 | Lte, [INFO] [stdout] | ^^^ [INFO] [stdout] 25 | Gt, [INFO] [stdout] | ^^ [INFO] [stdout] 26 | Gte, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CondResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/ir.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub enum Operation { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 37 | PushI(i32), [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | AddI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | SubI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | MulI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | DivI { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | Load { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | LoadAI { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | LoadAO { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | Store { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | StoreAI { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | StoreAO { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | Ci2i { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | Jump(Reg), [INFO] [stdout] | ^^^^ [INFO] [stdout] 129 | [INFO] [stdout] 130 | Tbl { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | CmpNotEq { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | Comp { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Operation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/lexer.rs:319:25 [INFO] [stdout] | [INFO] [stdout] 319 | fn lex_this(input: &'static str) -> Result, Error> { [INFO] [stdout] | ^^^^^^^ ------ the lifetime gets resolved as `'static` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'static` [INFO] [stdout] | [INFO] [stdout] 319 | fn lex_this(input: &'static str) -> Result>, Error> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:355:13 [INFO] [stdout] | [INFO] [stdout] 355 | fn peek(&self) -> Option<&Lexeme> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 355 | fn peek(&self) -> Option<&Lexeme<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parser.rs:359:14 [INFO] [stdout] | [INFO] [stdout] 359 | fn peekn(&self, n: usize) -> Option<&Lexeme> { [INFO] [stdout] | ^^^^^ ------- [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 359 | fn peekn(&self, n: usize) -> Option<&Lexeme<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source_reader.rs:15:25 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(source: &'a str) -> StrReader { [INFO] [stdout] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(source: &'a str) -> StrReader<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.06s [INFO] running `Command { std: "docker" "inspect" "4179e596686909e973cef8cab0efd6de55b61f022e7d38dd08b194c4168e956c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4179e596686909e973cef8cab0efd6de55b61f022e7d38dd08b194c4168e956c", kill_on_drop: false }` [INFO] [stdout] 4179e596686909e973cef8cab0efd6de55b61f022e7d38dd08b194c4168e956c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] c331e34bee49aa575efa61df1130f0f19c7aa200748fa4926e82f648a844537e [INFO] running `Command { std: "docker" "start" "-a" "c331e34bee49aa575efa61df1130f0f19c7aa200748fa4926e82f648a844537e", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/ir_builder.rs:175:26 [INFO] [stderr] | [INFO] [stderr] 175 | AstExpr::Str(s) => unimplemented!(), [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variants `Eq`, `NotEq`, `Lt`, `Lte`, `Gt`, and `Gte` are never constructed [INFO] [stderr] --> src/ir.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub enum CondResult { [INFO] [stderr] | ---------- variants in this enum [INFO] [stderr] 21 | Eq, [INFO] [stderr] | ^^ [INFO] [stderr] 22 | NotEq, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 23 | Lt, [INFO] [stderr] | ^^ [INFO] [stderr] 24 | Lte, [INFO] [stderr] | ^^^ [INFO] [stderr] 25 | Gt, [INFO] [stderr] | ^^ [INFO] [stderr] 26 | Gte, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CondResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: multiple variants are never constructed [INFO] [stderr] --> src/ir.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 30 | pub enum Operation { [INFO] [stderr] | --------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 37 | PushI(i32), [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | AddI { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 66 | SubI { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | MulI { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 76 | DivI { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 82 | Load { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 86 | LoadAI { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 91 | LoadAO { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 101 | Store { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 105 | StoreAI { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 110 | StoreAO { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 121 | Ci2i { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 128 | Jump(Reg), [INFO] [stderr] | ^^^^ [INFO] [stderr] 129 | [INFO] [stderr] 130 | Tbl { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 160 | CmpNotEq { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 172 | Comp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Operation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/lexer.rs:319:25 [INFO] [stderr] | [INFO] [stderr] 319 | fn lex_this(input: &'static str) -> Result, Error> { [INFO] [stderr] | ^^^^^^^ ------ the lifetime gets resolved as `'static` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to consistently use `'static` [INFO] [stderr] | [INFO] [stderr] 319 | fn lex_this(input: &'static str) -> Result>, Error> { [INFO] [stderr] | +++++++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:355:13 [INFO] [stderr] | [INFO] [stderr] 355 | fn peek(&self) -> Option<&Lexeme> { [INFO] [stderr] | ^^^^^ ------- [INFO] [stderr] | | || [INFO] [stderr] | | |the lifetimes get resolved as `'_` [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 355 | fn peek(&self) -> Option<&Lexeme<'_>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parser.rs:359:14 [INFO] [stderr] | [INFO] [stderr] 359 | fn peekn(&self, n: usize) -> Option<&Lexeme> { [INFO] [stderr] | ^^^^^ ------- [INFO] [stderr] | | || [INFO] [stderr] | | |the lifetimes get resolved as `'_` [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 359 | fn peekn(&self, n: usize) -> Option<&Lexeme<'_>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/source_reader.rs:15:25 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new(source: &'a str) -> StrReader { [INFO] [stderr] | ^^ --------- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 15 | pub fn new(source: &'a str) -> StrReader<'a> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `langtwo` (bin "langtwo" test) generated 7 warnings (run `cargo fix --bin "langtwo" --tests` to apply 4 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/langtwo-ea4a0366f8ba7d6f) [INFO] [stdout] [INFO] [stdout] running 77 tests [INFO] [stdout] test interpreter::test::test_empty_program ... ok [INFO] [stdout] test interpreter::test::test_expression_value ... ok [INFO] [stdout] test interpreter::test::test_compare ... ok [INFO] [stdout] test interpreter::test::test_fn_call ... ok [INFO] [stdout] test interpreter::test::test_arithmetic_precedence ... ok [INFO] [stdout] test interpreter::test::test_binop_simple ... ok [INFO] [stdout] test interpreter::test::test_empty_fn_call ... ok [INFO] [stdout] test interpreter::test::test_loop ... ok [INFO] [stdout] test interpreter::test::test_parens ... ok [INFO] [stdout] test interpreter::test::test_multiple_fn_call ... ok [INFO] [stdout] test interpreter::test::test_factor_with_loop ... ok [INFO] [stdout] test interpreter::test::test_binop_complex ... ok [INFO] [stdout] test interpreter::test::test_op_precedence ... ok [INFO] [stdout] test ir_builder::test::test_assignment ... ok [INFO] [stdout] test interpreter::test::test_recursion ... ok [INFO] [stdout] test interpreter::test::test_fn_call_with_fn_call_arg ... ok [INFO] [stdout] test ir_builder::test::test_empty ... ok [INFO] [stdout] test interpreter::test::test_if ... ok [INFO] [stdout] test ir_builder::test::test_expr_binop_mod ... ok [INFO] [stdout] test ir_builder::test::test_fn_call ... ok [INFO] [stdout] test ir_builder::test::test_int ... ok [INFO] [stdout] test ir_builder::test::test_if_then ... ok [INFO] [stdout] test ir_builder::test::test_break ... ok [INFO] [stdout] test ir_builder::test::test_if_then_else ... ok [INFO] [stdout] test interpreter::test::test_recursion_with_boolean ... ok [INFO] [stdout] test ir_builder::test::test_int_binop_add ... ok [INFO] [stdout] test ir_builder::test::test_loop ... ok [INFO] [stdout] test lexer::test::test_assign ... ok [INFO] [stdout] test lexer::test::test_boolean ... ok [INFO] [stdout] test lexer::test::test_comma ... ok [INFO] [stdout] test lexer::test::test_brace_open ... ok [INFO] [stdout] test lexer::test::test_compare ... ok [INFO] [stdout] test lexer::test::test_empty_input ... ok [INFO] [stdout] test lexer::test::test_int ... ok [INFO] [stdout] test lexer::test::test_keywords ... ok [INFO] [stdout] test lexer::test::test_messy_mix ... ok [INFO] [stdout] test lexer::test::test_name ... ok [INFO] [stdout] test lexer::test::test_brace_close ... ok [INFO] [stdout] test lexer::test::test_ops ... ok [INFO] [stdout] test lexer::test::test_op_eq_and_assign ... ok [INFO] [stdout] test lexer::test::test_paren_open ... ok [INFO] [stdout] test lexer::test::test_str ... ok [INFO] [stdout] test lexer::test::test_paren_close ... ok [INFO] [stdout] test lexer::test::test_semicolon ... ok [INFO] [stdout] test parser::test::test_expr_assignment ... ok [INFO] [stdout] test parser::test::test_expr_binop_eq ... ok [INFO] [stdout] test parser::test::test_expr_bool ... ok [INFO] [stdout] test interpreter::test::test_fizzbuzz ... ok [INFO] [stdout] test parser::test::build_minimal_program ... ok [INFO] [stdout] test parser::test::build_empty_program ... ok [INFO] [stdout] test parser::test::test_expr_fn_call ... ok [INFO] [stdout] test parser::test::test_expr_int ... ok [INFO] [stdout] test parser::test::test_expr_if ... ok [INFO] [stdout] test parser::test::test_expr_paren_expr ... ok [INFO] [stdout] test parser::test::test_expr_str ... ok [INFO] [stdout] test parser::test::test_fndef ... ok [INFO] [stdout] test parser::test::test_op_in_argument ... ok [INFO] [stdout] test parser::test::test_single_op ... ok [INFO] [stdout] test parser::test::test_loop_and_break ... ok [INFO] [stdout] test parser::test::test_expr_name ... ok [INFO] [stdout] test source_reader::test::test_is_eof ... ok [INFO] [stdout] test source_reader::test::test_read_until ... ok [INFO] [stdout] test source_reader::test::test_read_until_at_end ... ok [INFO] [stdout] test vm::test::test_empty_program ... ok [INFO] [stdout] test parser::test::test_string_op ... ok [INFO] [stdout] test source_reader::test::test_peek ... ok [INFO] [stdout] test parser::test::test_multiple_op ... ok [INFO] [stdout] test vm::test::test_expr_binop_mod ... ok [INFO] [stdout] test vm::test::test_expr_int ... ok [INFO] [stdout] test vm::test::test_expr_variable_re_assignment ... ok [INFO] [stdout] test vm::test::test_expr_variable_assignment ... ok [INFO] [stdout] test vm::test::test_fn_call ... ok [INFO] [stdout] test source_reader::test::test_next ... ok [INFO] [stdout] test vm::test::test_if ... ok [INFO] [stdout] test vm::test::test_loop_and_break ... ok [INFO] [stdout] test vm::test::test_fib ... ok [INFO] [stdout] test vm::test::test_nested_calls ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 77 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c331e34bee49aa575efa61df1130f0f19c7aa200748fa4926e82f648a844537e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c331e34bee49aa575efa61df1130f0f19c7aa200748fa4926e82f648a844537e", kill_on_drop: false }` [INFO] [stdout] c331e34bee49aa575efa61df1130f0f19c7aa200748fa4926e82f648a844537e