[INFO] cloning repository https://github.com/weykon/rust-data-structure
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/weykon/rust-data-structure" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fweykon%2Frust-data-structure", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fweykon%2Frust-data-structure'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ccfa262712de1af898e9dedd14a0b05b93fd4e18
[INFO] checking weykon/rust-data-structure against master#2a023bf80a6fbd6a06d5460a34eb247b986286ed for pr-143764
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fweykon%2Frust-data-structure" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/weykon/rust-data-structure
[INFO] finished tweaking git repo https://github.com/weykon/rust-data-structure
[INFO] tweaked toml for git repo https://github.com/weykon/rust-data-structure written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/weykon/rust-data-structure on toolchain 2a023bf80a6fbd6a06d5460a34eb247b986286ed
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2a023bf80a6fbd6a06d5460a34eb247b986286ed" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/weykon/rust-data-structure 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" "+2a023bf80a6fbd6a06d5460a34eb247b986286ed" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+2a023bf80a6fbd6a06d5460a34eb247b986286ed" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6e9d3e80b7fa2a77f8a574bf5b56c6be997982924950d368cb4e1ca0bcaed11a
[INFO] running `Command { std: "docker" "start" "-a" "6e9d3e80b7fa2a77f8a574bf5b56c6be997982924950d368cb4e1ca0bcaed11a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6e9d3e80b7fa2a77f8a574bf5b56c6be997982924950d368cb4e1ca0bcaed11a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e9d3e80b7fa2a77f8a574bf5b56c6be997982924950d368cb4e1ca0bcaed11a", kill_on_drop: false }`
[INFO] [stdout] 6e9d3e80b7fa2a77f8a574bf5b56c6be997982924950d368cb4e1ca0bcaed11a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+2a023bf80a6fbd6a06d5460a34eb247b986286ed" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2c4ab550bb29c7daf4a11db5dc57518f3352b87acecd9a9f37ced39c2b21fe28
[INFO] running `Command { std: "docker" "start" "-a" "2c4ab550bb29c7daf4a11db5dc57518f3352b87acecd9a9f37ced39c2b21fe28", kill_on_drop: false }`
[INFO] [stderr]     Checking pointer v0.1.0 (/opt/rustwide/workdir/pointer)
[INFO] [stderr]     Checking dyn_prog v0.1.0 (/opt/rustwide/workdir/dyn_prog)
[INFO] [stderr]     Checking shirt_store v0.1.0 (/opt/rustwide/workdir/shirt_store)
[INFO] [stderr]     Checking stack v0.1.0 (/opt/rustwide/workdir/stack)
[INFO] [stderr]     Checking ref_or_owner_check_type v0.1.0 (/opt/rustwide/workdir/ref_or_owner_check_type)
[INFO] [stderr]     Checking how_understand_deref v0.1.0 (/opt/rustwide/workdir/how_understand_deref)
[INFO] [stderr]     Checking unsafe_split v0.1.0 (/opt/rustwide/workdir/unsafe_split)
[INFO] [stderr]     Checking blog_post v0.1.0 (/opt/rustwide/workdir/blog_post)
[INFO] [stderr]     Checking ref_and_owner_borrow_rwo v0.1.0 (/opt/rustwide/workdir/ref_and_owner_borrow_rwo)
[INFO] [stderr]     Checking double_channel_pointer_at_for v0.1.0 (/opt/rustwide/workdir/double_channel_pointer_at_for)
[INFO] [stderr]     Checking option_and_box v0.1.0 (/opt/rustwide/workdir/option_and_box)
[INFO] [stdout] warning: unused import: `first::*`
[INFO] [stdout]  --> stack/src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use first::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `first::*`
[INFO] [stdout]  --> stack/src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use first::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]   --> how_understand_deref/src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let num = &v[2];
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s5` is never read
[INFO] [stdout]   --> ref_or_owner_check_type/src/main.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let mut s5 = String::new();
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]   --> blog_post/src/main.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn content<'a>(&self, post: &'a Post) -> &'a str {
[INFO] [stdout]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `reject` and `content` are never used
[INFO] [stdout]   --> blog_post/src/main.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | trait State {
[INFO] [stdout]    |       ----- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn reject(self: Box<Self>) -> Box<dyn State>;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 67 |     fn content<'a>(&self, post: &'a Post) -> &'a str {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rust-data-structure v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `List` is never constructed
[INFO] [stdout]   --> stack/src/first.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct List {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Link` is never used
[INFO] [stdout]   --> stack/src/first.rs:23:6
[INFO] [stdout]    |
[INFO] [stdout] 23 | enum Link {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> stack/src/first.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push`, and `pop` are never used
[INFO] [stdout]   --> stack/src/first.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl List {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 32 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn push(&mut self, elem: i32) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn pop(&mut self) -> Option<i32> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push`, `peek`, and `peek_mut` are never used
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<T> List<T> {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn push(&mut self, value: T) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn peek(&self) -> Option<&T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn peek_mut(&mut self) -> Option<&mut T> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Iter` is never constructed
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Iter<'a, T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `iter` is never used
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | impl<T> List<T> {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 85 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]  --> ref_and_owner_borrow_rwo/src/main.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let l = 1;
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `l`
[INFO] [stdout]  --> ref_and_owner_borrow_rwo/src/main.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let l = 1;
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_l`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IterMut` is never constructed
[INFO] [stdout]    --> stack/src/second_ok_stack.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct IterMut<'a, T> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `iter_mut` is never used
[INFO] [stdout]    --> stack/src/second_ok_stack.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl<T> List<T> {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 107 |     pub fn iter_mut(&mut self) -> IterMut<'_, T> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]  --> ref_and_owner_borrow_rwo/src/main.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let a = *r;
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_deref_ref_s`
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let ref_deref_ref_s = &*ref_s;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_deref_ref_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |                 ^^^^^     ------- the lifetime gets resolved as `'_`
[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 remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `x` is never read
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     x += z;
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let a = *b;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_v`
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let ref_v = &v;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]  --> ref_and_owner_borrow_rwo/src/main.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let a = *r;
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_deref_ref_s`
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let ref_deref_ref_s = &*ref_s;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_deref_ref_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `x` is never read
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     x += z;
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let a = *b;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_v`
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let ref_v = &v;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut s = Box::new(2);
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let mut b = Box::new(2);
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let mut v = String::new();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut s = Box::new(2);
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let mut b = Box::new(2);
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> ref_and_owner_borrow_rwo/src/main.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let mut v = String::new();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_0`
[INFO] [stdout]   --> shirt_store/src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let order_0 = store.giveaway(Some(ShirtColor::Blue));
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_1`
[INFO] [stdout]   --> shirt_store/src/main.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let order_1 = store.giveaway(Some(ShirtColor::Red));
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_2`
[INFO] [stdout]   --> shirt_store/src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let order_2 = store.giveaway(Some(ShirtColor::Red));
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_3`
[INFO] [stdout]   --> shirt_store/src/main.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let order_3 = store.giveaway(None);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_to_option`
[INFO] [stdout]   --> option_and_box/src/main.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let ref_to_option = &*option_ref;
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_to_option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_to_one`
[INFO] [stdout]   --> option_and_box/src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let ref_to_one = *option_ref;
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_to_one`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `option_and_ref_one`
[INFO] [stdout]   --> option_and_box/src/main.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let option_and_ref_one = aa.as_ref();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_option_and_ref_one`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keep_option_with_box_deref_into_one`
[INFO] [stdout]   --> option_and_box/src/main.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let keep_option_with_box_deref_into_one = aa.as_deref();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_keep_option_with_box_deref_into_one`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Iter` is never constructed
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Iter<'a, T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `iter` is never used
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | impl<T> List<T> {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 85 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IterMut` is never constructed
[INFO] [stdout]    --> stack/src/second_ok_stack.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct IterMut<'a, T> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `iter_mut` is never used
[INFO] [stdout]    --> stack/src/second_ok_stack.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl<T> List<T> {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 107 |     pub fn iter_mut(&mut self) -> IterMut<'_, T> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> stack/src/second_ok_stack.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |                 ^^^^^     ------- the lifetime gets resolved as `'_`
[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 remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num`
[INFO] [stdout]   --> how_understand_deref/src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let num = &v[2];
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_num`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s5` is never read
[INFO] [stdout]   --> ref_or_owner_check_type/src/main.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let mut s5 = String::new();
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `post`
[INFO] [stdout]   --> blog_post/src/main.rs:67:27
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn content<'a>(&self, post: &'a Post) -> &'a str {
[INFO] [stdout]    |                           ^^^^ help: if this is intentional, prefix it with an underscore: `_post`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `reject` and `content` are never used
[INFO] [stdout]   --> blog_post/src/main.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | trait State {
[INFO] [stdout]    |       ----- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn reject(self: Box<Self>) -> Box<dyn State>;
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 67 |     fn content<'a>(&self, post: &'a Post) -> &'a str {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_imm`
[INFO] [stdout]   --> pointer/src/lib.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let ref_imm: &u32 = &*p_imm;
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_imm`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ref_mut`
[INFO] [stdout]   --> pointer/src/lib.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let ref_mut: &mut u32 = &mut *p_mut;
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ref_mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_0`
[INFO] [stdout]   --> shirt_store/src/main.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let order_0 = store.giveaway(Some(ShirtColor::Blue));
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_0`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_1`
[INFO] [stdout]   --> shirt_store/src/main.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let order_1 = store.giveaway(Some(ShirtColor::Red));
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_2`
[INFO] [stdout]   --> shirt_store/src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let order_2 = store.giveaway(Some(ShirtColor::Red));
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `order_3`
[INFO] [stdout]   --> shirt_store/src/main.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     let order_3 = store.giveaway(None);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_order_3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] running `Command { std: "docker" "inspect" "2c4ab550bb29c7daf4a11db5dc57518f3352b87acecd9a9f37ced39c2b21fe28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c4ab550bb29c7daf4a11db5dc57518f3352b87acecd9a9f37ced39c2b21fe28", kill_on_drop: false }`
[INFO] [stdout] 2c4ab550bb29c7daf4a11db5dc57518f3352b87acecd9a9f37ced39c2b21fe28
