[INFO] cloning repository https://github.com/mvojacek/rust-expr-calc [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mvojacek/rust-expr-calc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvojacek%2Frust-expr-calc", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvojacek%2Frust-expr-calc'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fe285145034d08d383d362c3f5f6c61aa72daf6c [INFO] checking mvojacek/rust-expr-calc against master#d97bb195bf7b84815622b235cb51171c1b8f7e51 for pr-117905 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvojacek%2Frust-expr-calc" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mvojacek/rust-expr-calc on toolchain d97bb195bf7b84815622b235cb51171c1b8f7e51 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d97bb195bf7b84815622b235cb51171c1b8f7e51" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mvojacek/rust-expr-calc [INFO] finished tweaking git repo https://github.com/mvojacek/rust-expr-calc [INFO] tweaked toml for git repo https://github.com/mvojacek/rust-expr-calc written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/mvojacek/rust-expr-calc 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" "+d97bb195bf7b84815622b235cb51171c1b8f7e51" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [ERROR] this task or one of its parent failed! [ERROR] no output for 300 seconds [ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace. [INFO] checking mvojacek/rust-expr-calc against try#1930f260edd7e614aa013a0665aa5cfd0ada0501 for pr-117905 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvojacek%2Frust-expr-calc" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mvojacek/rust-expr-calc on toolchain 1930f260edd7e614aa013a0665aa5cfd0ada0501 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1930f260edd7e614aa013a0665aa5cfd0ada0501" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mvojacek/rust-expr-calc [INFO] finished tweaking git repo https://github.com/mvojacek/rust-expr-calc [INFO] tweaked toml for git repo https://github.com/mvojacek/rust-expr-calc written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/mvojacek/rust-expr-calc 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" "+1930f260edd7e614aa013a0665aa5cfd0ada0501" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking mvojacek/rust-expr-calc against try#1930f260edd7e614aa013a0665aa5cfd0ada0501 for pr-117905 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvojacek%2Frust-expr-calc" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mvojacek/rust-expr-calc on toolchain 1930f260edd7e614aa013a0665aa5cfd0ada0501 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1930f260edd7e614aa013a0665aa5cfd0ada0501" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mvojacek/rust-expr-calc [INFO] finished tweaking git repo https://github.com/mvojacek/rust-expr-calc [INFO] tweaked toml for git repo https://github.com/mvojacek/rust-expr-calc written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/mvojacek/rust-expr-calc 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" "+1930f260edd7e614aa013a0665aa5cfd0ada0501" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded num-rational v0.2.1 [INFO] [stderr] Downloaded itertools v0.8.0 [INFO] [stderr] Downloaded autocfg v0.1.4 [INFO] [stderr] Downloaded num-complex v0.2.1 [INFO] [stderr] Downloaded num-bigint v0.2.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1930f260edd7e614aa013a0665aa5cfd0ada0501" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 57e98735ee41edc2434daf486f048290f263d97b60cc88978d3e5cf330a8d6bd [INFO] running `Command { std: "docker" "start" "-a" "57e98735ee41edc2434daf486f048290f263d97b60cc88978d3e5cf330a8d6bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "57e98735ee41edc2434daf486f048290f263d97b60cc88978d3e5cf330a8d6bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "57e98735ee41edc2434daf486f048290f263d97b60cc88978d3e5cf330a8d6bd", kill_on_drop: false }` [INFO] [stdout] 57e98735ee41edc2434daf486f048290f263d97b60cc88978d3e5cf330a8d6bd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1930f260edd7e614aa013a0665aa5cfd0ada0501" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f0ea44609863f60369ed2308e7915b17131b109d07d42c1c863bb27470479622 [INFO] running `Command { std: "docker" "start" "-a" "f0ea44609863f60369ed2308e7915b17131b109d07d42c1c863bb27470479622", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.4 [INFO] [stderr] Compiling num-bigint v0.2.2 [INFO] [stderr] Compiling num-complex v0.2.1 [INFO] [stderr] Compiling num-rational v0.2.1 [INFO] [stderr] Checking either v1.5.2 [INFO] [stderr] Checking itertools v0.8.0 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Checking num v0.2.0 [INFO] [stderr] Checking rustplay v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/asdebug.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(specialization, core_intrinsics)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/nodelinkedlist.rs:347:42 [INFO] [stdout] | [INFO] [stdout] 347 | let mut n: [Node; 4] = mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/asdebug.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(specialization, core_intrinsics)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | OpErr(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 99 | OpErr(Box), [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:210:40 [INFO] [stdout] | [INFO] [stdout] 210 | where F: Fn(N, N) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 210 | where F: Fn(N, N) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/asdebug.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | fn as_debug(&self) -> &Debug; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 | fn as_debug(&self) -> &dyn Debug; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/asdebug.rs:16:28 [INFO] [stdout] | [INFO] [stdout] 16 | fn as_debug(&self) -> &Debug { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | fn as_debug(&self) -> &dyn Debug { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/nodelinkedlist.rs:347:42 [INFO] [stdout] | [INFO] [stdout] 347 | let mut n: [Node; 4] = mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | OpErr(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 99 | OpErr(Box), [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:210:40 [INFO] [stdout] | [INFO] [stdout] 210 | where F: Fn(N, N) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 210 | where F: Fn(N, N) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/asdebug.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | fn as_debug(&self) -> &Debug; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 | fn as_debug(&self) -> &dyn Debug; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/asdebug.rs:16:28 [INFO] [stdout] | [INFO] [stdout] 16 | fn as_debug(&self) -> &Debug { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | fn as_debug(&self) -> &dyn Debug { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/nodelinkedlist.rs:327:48 [INFO] [stdout] | [INFO] [stdout] 327 | let it = &mut iter.into_iter() as &mut Iterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 327 | let it = &mut iter.into_iter() as &mut dyn Iterator; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/nodelinkedlist.rs:327:48 [INFO] [stdout] | [INFO] [stdout] 327 | let it = &mut iter.into_iter() as &mut Iterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 327 | let it = &mut iter.into_iter() as &mut dyn Iterator; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `locked` [INFO] [stdout] --> src/main.rs:184:24 [INFO] [stdout] | [INFO] [stdout] 184 | Expr::Num { n, locked } => Ok(n), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `locked: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:225:37 [INFO] [stdout] | [INFO] [stdout] 225 | Expr::Num { n, locked } => { [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:233:29 [INFO] [stdout] | [INFO] [stdout] 233 | Expr::Num { n, locked: true } => return Ok(()), [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:241:37 [INFO] [stdout] | [INFO] [stdout] 241 | Expr::Num { n, locked } => { [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:249:29 [INFO] [stdout] | [INFO] [stdout] 249 | Expr::Num { n, locked: true } => return Ok(()), [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/main.rs:276:44 [INFO] [stdout] | [INFO] [stdout] 276 | paren_mut_adjacent_num(&n, p, |num, locked| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `locked` [INFO] [stdout] --> src/main.rs:292:32 [INFO] [stdout] | [INFO] [stdout] 292 | Expr::Num { n, locked } => n, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `locked: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:302:65 [INFO] [stdout] | [INFO] [stdout] 302 | paren_mut_adjacent_num(&close_paren, Paren::Close, |n, locked| { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:305:63 [INFO] [stdout] | [INFO] [stdout] 305 | paren_mut_adjacent_num(&open_paren, Paren::Open, |n, locked| { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:385:25 [INFO] [stdout] | [INFO] [stdout] 385 | Expr::Num { n, locked } => true, [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `locked` [INFO] [stdout] --> src/main.rs:385:28 [INFO] [stdout] | [INFO] [stdout] 385 | Expr::Num { n, locked } => true, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `locked: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate10` is never used [INFO] [stdout] --> src/main.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn calculate10(expr: &String) -> Result, CalcErr)> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_num`, `is_op`, and `is_paren` are never used [INFO] [stdout] --> src/main.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 382 | impl Expr { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] 383 | fn is_num(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 389 | fn is_op(&self) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 395 | fn is_paren(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `insert_before_node`, `insert_before`, `split_after`, and `split_before` are never used [INFO] [stdout] --> src/nodelinkedlist.rs:133:12 [INFO] [stdout] | [INFO] [stdout] 120 | impl Node { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn insert_before_node(self, node: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn insert_before(&self, val: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn split_after(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn split_before(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `iter_walk_val`, `list_iter_back`, and `list_iter_val` are never used [INFO] [stdout] --> src/nodelinkedlist.rs:209:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl Node { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 209 | pub fn iter_walk_val(&self) -> WalkingIterVal where T: Clone { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | pub fn list_iter_back(&self) -> Chain, WalkingIterBack> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn list_iter_val(&self) -> Chain, WalkingIterVal> where T: Clone { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `tail`, `head`, `list_distance`, and `list_find` are never used [INFO] [stdout] --> src/nodelinkedlist.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 226 | impl Node { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 227 | pub fn tail(&self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn head(&self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn list_distance(&self, following: &Self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | pub fn list_find(&self, other: &Self) -> Option<(bool, usize)> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `list_append_node`, `list_append`, `list_prepend_node`, and `list_prepend` are never used [INFO] [stdout] --> src/nodelinkedlist.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 250 | impl Node { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 251 | // list extension [INFO] [stdout] 252 | pub fn list_append_node(&self, node: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 256 | pub fn list_append(&self, val: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn list_prepend_node(&self, node: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn list_prepend(&self, val: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_linkedlist_for_tests` is never used [INFO] [stdout] --> src/nodelinkedlist.rs:345:4 [INFO] [stdout] | [INFO] [stdout] 345 | fn make_linkedlist_for_tests() -> [Node; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[Node; 4]` does not permit being left uninitialized [INFO] [stdout] --> src/nodelinkedlist.rs:347:37 [INFO] [stdout] | [INFO] [stdout] 347 | let mut n: [Node; 4] = mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: `nodelinkedlist::Node` must be non-null [INFO] [stdout] note: because `std::rc::Rc>>` must be non-null (in this struct field) [INFO] [stdout] --> src/nodelinkedlist.rs:40:21 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct Node (StrongNode); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: because `std::ptr::NonNull>>>` must be non-null [INFO] [stdout] = note: raw pointers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n4` [INFO] [stdout] --> src/nodelinkedlist.rs:443:9 [INFO] [stdout] | [INFO] [stdout] 443 | let n4 = Node::new(4); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_n4` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `locked` [INFO] [stdout] --> src/main.rs:184:24 [INFO] [stdout] | [INFO] [stdout] 184 | Expr::Num { n, locked } => Ok(n), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `locked: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:225:37 [INFO] [stdout] | [INFO] [stdout] 225 | Expr::Num { n, locked } => { [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:233:29 [INFO] [stdout] | [INFO] [stdout] 233 | Expr::Num { n, locked: true } => return Ok(()), [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:241:37 [INFO] [stdout] | [INFO] [stdout] 241 | Expr::Num { n, locked } => { [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:249:29 [INFO] [stdout] | [INFO] [stdout] 249 | Expr::Num { n, locked: true } => return Ok(()), [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/main.rs:276:44 [INFO] [stdout] | [INFO] [stdout] 276 | paren_mut_adjacent_num(&n, p, |num, locked| { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `locked` [INFO] [stdout] --> src/main.rs:292:32 [INFO] [stdout] | [INFO] [stdout] 292 | Expr::Num { n, locked } => n, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `locked: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:302:65 [INFO] [stdout] | [INFO] [stdout] 302 | paren_mut_adjacent_num(&close_paren, Paren::Close, |n, locked| { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:305:63 [INFO] [stdout] | [INFO] [stdout] 305 | paren_mut_adjacent_num(&open_paren, Paren::Open, |n, locked| { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:385:25 [INFO] [stdout] | [INFO] [stdout] 385 | Expr::Num { n, locked } => true, [INFO] [stdout] | ^ help: try ignoring the field: `n: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `locked` [INFO] [stdout] --> src/main.rs:385:28 [INFO] [stdout] | [INFO] [stdout] 385 | Expr::Num { n, locked } => true, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `locked: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_num`, `is_op`, and `is_paren` are never used [INFO] [stdout] --> src/main.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 382 | impl Expr { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] 383 | fn is_num(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 389 | fn is_op(&self) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 395 | fn is_paren(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `insert_before`, `split_after`, and `split_before` are never used [INFO] [stdout] --> src/nodelinkedlist.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 120 | impl Node { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn insert_before(&self, val: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn split_after(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn split_before(&self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `list_append_node`, `list_append`, `list_prepend_node`, and `list_prepend` are never used [INFO] [stdout] --> src/nodelinkedlist.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 250 | impl Node { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 251 | // list extension [INFO] [stdout] 252 | pub fn list_append_node(&self, node: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 256 | pub fn list_append(&self, val: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn list_prepend_node(&self, node: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn list_prepend(&self, val: T) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[Node; 4]` does not permit being left uninitialized [INFO] [stdout] --> src/nodelinkedlist.rs:347:37 [INFO] [stdout] | [INFO] [stdout] 347 | let mut n: [Node; 4] = mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: `nodelinkedlist::Node` must be non-null [INFO] [stdout] note: because `std::rc::Rc>>` must be non-null (in this struct field) [INFO] [stdout] --> src/nodelinkedlist.rs:40:21 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct Node (StrongNode); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: because `std::ptr::NonNull>>>` must be non-null [INFO] [stdout] = note: raw pointers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.04s [INFO] running `Command { std: "docker" "inspect" "f0ea44609863f60369ed2308e7915b17131b109d07d42c1c863bb27470479622", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f0ea44609863f60369ed2308e7915b17131b109d07d42c1c863bb27470479622", kill_on_drop: false }` [INFO] [stdout] f0ea44609863f60369ed2308e7915b17131b109d07d42c1c863bb27470479622