[INFO] cloning repository https://github.com/sylsaint/rust-playground
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sylsaint/rust-playground" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsylsaint%2Frust-playground", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsylsaint%2Frust-playground'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3ef861cbbfd56aed940e22dbe012d9afbf6c3d2b
[INFO] testing sylsaint/rust-playground against beta-2025-09-21 for beta-1.91-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsylsaint%2Frust-playground" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sylsaint/rust-playground
[INFO] finished tweaking git repo https://github.com/sylsaint/rust-playground
[INFO] tweaked toml for git repo https://github.com/sylsaint/rust-playground written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sylsaint/rust-playground on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sylsaint/rust-playground 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" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3148db74fc3d7cd0ec5759fb69a83868acca9a4ba27d367fd08622cce5e2bcbf
[INFO] running `Command { std: "docker" "start" "-a" "3148db74fc3d7cd0ec5759fb69a83868acca9a4ba27d367fd08622cce5e2bcbf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3148db74fc3d7cd0ec5759fb69a83868acca9a4ba27d367fd08622cce5e2bcbf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3148db74fc3d7cd0ec5759fb69a83868acca9a4ba27d367fd08622cce5e2bcbf", kill_on_drop: false }`
[INFO] [stdout] 3148db74fc3d7cd0ec5759fb69a83868acca9a4ba27d367fd08622cce5e2bcbf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b88534ff1b33ea85e5a5ff4b3cc585644eb99be46bbfce9bb132dde0b835b018
[INFO] running `Command { std: "docker" "start" "-a" "b88534ff1b33ea85e5a5ff4b3cc585644eb99be46bbfce9bb132dde0b835b018", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.146
[INFO] [stderr]    Compiling proc-macro2 v1.0.63
[INFO] [stderr]    Compiling unicode-ident v1.0.10
[INFO] [stderr]    Compiling quote v1.0.29
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling hello_macro v0.1.0 (/opt/rustwide/workdir/hello_macro)
[INFO] [stderr]    Compiling show_macro v0.1.0 (/opt/rustwide/workdir/show_macro)
[INFO] [stderr]    Compiling getrandom v0.2.10
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling hello_macro_derive v0.1.0 (/opt/rustwide/workdir/hello_macro_derive)
[INFO] [stderr]    Compiling attr_macro v0.1.0 (/opt/rustwide/workdir/attr_macro)
[INFO] [stdout] warning: unused import: `quote::ToTokens`
[INFO] [stdout]  --> attr_macro/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quote::ToTokens;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `syn`
[INFO] [stdout]  --> attr_macro/src/lib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use syn;
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-playground v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]   --> src/lib.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct Rectangle {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_hold` is never used
[INFO] [stdout]   --> src/lib.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 46 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prints_and_returns_10` is never used
[INFO] [stdout]   --> src/lib.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn prints_and_returns_10(a: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_to_waitlist` is never used
[INFO] [stdout]  --> src/lib.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 |         pub fn add_to_waitlist() {
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `seasonal_fruit` is never read
[INFO] [stdout]   --> src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub struct Breakfast {
[INFO] [stdout]    |                --------- field in this struct
[INFO] [stdout] 12 |         pub toast: String,
[INFO] [stdout] 13 |         seasonal_fruit: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] attr: ""
[INFO] [stdout] item: "fn invoke1() {}"
[INFO] [stdout] ast is TokenStream [Ident { ident: "struct", span: #0 bytes(27967..27973) }, Ident { ident: "Pancakes", span: #0 bytes(27974..27982) }, Punct { ch: ';', spacing: Alone, span: #0 bytes(27982..27983) }]
[INFO] [stdout] name is Pancakes
[INFO] [stdout] gen into is impl HelloMacro for Pancakes
[INFO] [stdout] {
[INFO] [stdout]     fn hello_macro()
[INFO] [stdout]     { println! ("Hello, Macro! My name is {}!", stringify! (Pancakes)); }
[INFO] [stdout] }
[INFO] [stdout] attr is TokenStream [Ident { ident: "GET", span: #0 bytes(27993..27996) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(27996..27997) }, Literal { kind: Str, symbol: "/", suffix: None, span: #0 bytes(27998..28001) }]
[INFO] [stdout] func is TokenStream [Ident { ident: "pub", span: #0 bytes(28004..28007) }, Ident { ident: "fn", span: #0 bytes(28008..28010) }, Ident { ident: "index", span: #0 bytes(28011..28016) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "input", span: #0 bytes(28017..28022) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(28022..28023) }, Ident { ident: "String", span: #0 bytes(28024..28030) }], span: #0 bytes(28016..28031) }, Punct { ch: '-', spacing: Joint, span: #0 bytes(28032..28033) }, Punct { ch: '>', spacing: Alone, span: #0 bytes(28033..28034) }, Ident { ident: "String", span: #0 bytes(28035..28041) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "input", span: #0 bytes(28048..28053) }], span: #0 bytes(28042..28055) }]
[INFO] [stdout] token is Ident { ident: "GET", span: #0 bytes(27993..27996) }
[INFO] [stdout] method is GET
[INFO] [stdout] token is Punct { ch: ',', spacing: Alone, span: #0 bytes(27996..27997) }
[INFO] [stdout] others is ,
[INFO] [stdout] token is Literal { kind: Str, symbol: "/", suffix: None, span: #0 bytes(27998..28001) }
[INFO] [stdout] path is "/"
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]  --> src/borrow.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{ops::{Drop, Deref}, borrow::Borrow};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/head_first_rust/chapter1.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |     struct Foo {};
[INFO] [stdout]    |                  ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:43:43
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn function_ptr(x: i32)->i32 { x * 4 };
[INFO] [stdout]    |                                           ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `iPhone` should have an upper camel case name
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct iPhone<'a> {
[INFO] [stdout]    |        ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IPhone`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/head_first_rust/chapter26.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(get_type_id)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/basic.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut x1 = 10;
[INFO] [stdout]   |         ----^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/basic.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut i1: u8 = 254;
[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]   --> src/basic.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut n1 = Box::new(31_i32);
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/owner.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let s = String::from("hello");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/owner.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let s = "abcdefg";
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r2`
[INFO] [stdout]   --> src/owner.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let r2 = &mut ss_copy;
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/owner.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut hw = String::from("Hello World!");
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `greeting_file`
[INFO] [stdout]   --> src/errors.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let greeting_file = match greeting_file_result {
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_greeting_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/errors.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut m = [1, 2, 3];
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `INITIAL`
[INFO] [stdout]   --> src/lifetime.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let INITIAL = 10;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_INITIAL`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `r` is assigned to, but never used
[INFO] [stdout]   --> src/lifetime.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let r;
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_r` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `r` is never read
[INFO] [stdout]   --> src/lifetime.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         r = &x;
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/pointer.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let y = &x;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/pointer.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let d = CustomSmartPointer {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/pattern.rs:18:20
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/pattern.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/pattern.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 |         ( x, rest @ _, ..) => println!("second is {}", rest),
[INFO] [stdout]    |           ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/unsafety.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let addr = 0x309a5f9ccusize;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `var` is never read
[INFO] [stdout]   --> src/borrow.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut var = 0_i32;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s2` is never read
[INFO] [stdout]   --> src/borrow.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let mut s2 = S { v: 12 };
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/borrow.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut x = 1_i32;
[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]   --> src/borrow.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let mut x1 = &x;
[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]   --> src/cow.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let mut ss = result1.to_mut();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `guess`
[INFO] [stdout]  --> src/ch3.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let _guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout]   |         +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `COUNT`
[INFO] [stdout]   |
[INFO] [stdout] 2 -     let guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout] 2 +     let head_first_rust::chapter18::chapter18_run::COUNT: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r1_clone_v`
[INFO] [stdout]    --> src/head_first_rust/chapter1.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let r1_clone_v = r1_value;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1_clone_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num3`
[INFO] [stdout]   --> src/head_first_rust/chapter3.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let num3 = num1;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_num3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f2`
[INFO] [stdout]   --> src/head_first_rust/chapter3.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let f2 = f1;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_f2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `add` is never read
[INFO] [stdout]   --> src/head_first_rust/chapter4.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let mut add: fn((i32, i32)) -> i32 = add1 as fn((i32, i32)) -> i32;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fs1`
[INFO] [stdout]   --> src/head_first_rust/chapter6.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let fs1 = fs;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_fs1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let c = b;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v4`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let v4 = v1;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v5`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let v5 = v2;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v6`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let v6 = v3;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v8`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let v8 = v7;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v10`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let v10 = v9; 
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_v10`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]  --> src/head_first_rust/chapter12.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn get_less<'a, 'b>(x: &'a i32, y: &'b i32) -> &'b i32
[INFO] [stdout]   |                     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/head_first_rust/chapter12.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let s = String::from("hehe");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |             let p = &self.value as *const T as *mut T;
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn set<'a, 'b>(&'a self, v: &'b T) 
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |         unsafe {
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared2`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let shared2 = &shared1;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let p2 = &p1[0];
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let s1 = s.clone(); //(1)
[INFO] [stdout]   |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ps1`
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let ps1 = (*s).clone(); //(2)
[INFO] [stdout]   |         ^^^ help: if this is intentional, prefix it with an underscore: `_ps1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pps1`
[INFO] [stdout]   --> src/head_first_rust/chapter16.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let pps1 = (**s).clone(); //(3)
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pps1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rs1`
[INFO] [stdout]   --> src/head_first_rust/chapter16.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let rs1 = result1.as_ref();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_rs1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let mut vec_20_nonzero: Vec<NonZero> = Vec::with_capacity(20);
[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]   --> src/head_first_rust/chapter20.rs:65:14
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut a, b) : (R, T) = (R::new(), T::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]   --> src/head_first_rust/chapter22.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mut closure = |x: i32| -> i32 { x + 2 };
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let v1 = Vec::<i32>::new();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let v2: Vec<String> = Vec::with_capacity(1000);
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v3`
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let v3 = vec![1, 2, 3];
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/overflow.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 let y: [u64; 10000000] = [1; 10000000];
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `guess` is never used
[INFO] [stdout]  --> src/guess.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn guess() {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variable_run` is never used
[INFO] [stdout]  --> src/basic.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn variable_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `take_ownership` is never used
[INFO] [stdout]  --> src/owner.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn take_ownership(s: String) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change` is never used
[INFO] [stdout]  --> src/owner.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn change(s: &mut String) {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dangle` is never used
[INFO] [stdout]  --> src/owner.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn dangle() {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_word` is never used
[INFO] [stdout]   --> src/owner.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn first_word(s: &String) -> &str {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `owner_run` is never used
[INFO] [stdout]   --> src/owner.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn owner_run() {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]  --> src/strukt.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct User {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserRef` is never constructed
[INFO] [stdout]  --> src/strukt.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct UserRef<'a, 'b> {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]   --> src/strukt.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Rectangle {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `area`, `set_width`, and `can_hold` are never used
[INFO] [stdout]   --> src/strukt.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Rectangle {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 23 |     fn area(&self) -> u64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     fn set_width(&mut self, width: u64) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build` is never used
[INFO] [stdout]   --> src/strukt.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Rectangle {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 35 |     fn build(width: u64, height: u64) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `struct_run` is never used
[INFO] [stdout]   --> src/strukt.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn struct_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IpAddrNew` is never used
[INFO] [stdout]  --> src/enumer.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum IpAddrNew {
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]  --> src/enumer.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | enum Message {
[INFO] [stdout]   |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `call` is never used
[INFO] [stdout]   --> src/enumer.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Message {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 16 |    fn call(&self) {
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumer_run` is never used
[INFO] [stdout]   --> src/enumer.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn enumer_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Coin` is never used
[INFO] [stdout]  --> src/matcher.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Coin {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_in_cents` is never used
[INFO] [stdout]  --> src/matcher.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn value_in_cents(coin: Coin) -> u8 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus_one` is never used
[INFO] [stdout]   --> src/matcher.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn plus_one(x: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_run` is never used
[INFO] [stdout]   --> src/matcher.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn match_run() {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collections_run` is never used
[INFO] [stdout]  --> src/collections.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn collections_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hashmap_run` is never used
[INFO] [stdout]  --> src/hashmap.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn hashmap_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `errors_run` is never used
[INFO] [stdout]  --> src/errors.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn errors_run() {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/generic.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Point<T> {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `x` is never used
[INFO] [stdout]  --> src/generic.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | impl<T> Point<T> {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 6 |     fn x(&self) -> &T {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `distance_from_origin` is never used
[INFO] [stdout]   --> src/generic.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Point<f32> {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 11 |     fn distance_from_origin(&self) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic_run` is never used
[INFO] [stdout]   --> src/generic.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn generic_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Summary` is never used
[INFO] [stdout]  --> src/traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait Summary {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NewsArticle` is never constructed
[INFO] [stdout]  --> src/traits.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct NewsArticle {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tweet` is never constructed
[INFO] [stdout]   --> src/traits.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Tweet {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]   --> src/traits.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | struct Point {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Pilot` is never used
[INFO] [stdout]   --> src/traits.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | trait Pilot {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Wizard` is never used
[INFO] [stdout]   --> src/traits.rs:51:7
[INFO] [stdout]    |
[INFO] [stdout] 51 | trait Wizard {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Human` is never constructed
[INFO] [stdout]   --> src/traits.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct Human;
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fly` is never used
[INFO] [stdout]   --> src/traits.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl Human {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 70 |     fn fly(&self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Animal` is never used
[INFO] [stdout]   --> src/traits.rs:75:7
[INFO] [stdout]    |
[INFO] [stdout] 75 | trait Animal {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Dog` is never constructed
[INFO] [stdout]   --> src/traits.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct Dog;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `baby_name` is never used
[INFO] [stdout]   --> src/traits.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl Dog {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 82 |     fn baby_name() -> String {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OutlinePrint` is never used
[INFO] [stdout]   --> src/traits.rs:95:7
[INFO] [stdout]    |
[INFO] [stdout] 95 | trait OutlinePrint: fmt::Display {
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trais_run` is never used
[INFO] [stdout]    --> src/traits.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn trais_run() {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `D` is never constructed
[INFO] [stdout]  --> src/lifetime.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct D(i32);
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]   --> src/lifetime.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lifetime_run` is never used
[INFO] [stdout]   --> src/lifetime.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn lifetime_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_run` is never used
[INFO] [stdout]  --> src/iter.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn iter_run() {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ListSmart` is never used
[INFO] [stdout]   --> src/pointer.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum ListSmart {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ListRc` is never used
[INFO] [stdout]   --> src/pointer.rs:17:6
[INFO] [stdout]    |
[INFO] [stdout] 17 | enum ListRc {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pointer_run` is never used
[INFO] [stdout]   --> src/pointer.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn pointer_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/pointer.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 46 |     impl<T> MyBox<T> {
[INFO] [stdout]    |     ---------------- associated function in this implementation
[INFO] [stdout] 47 |         fn new(x: T) -> MyBox<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `List` is never used
[INFO] [stdout]  --> src/refcell.rs:5:6
[INFO] [stdout]   |
[INFO] [stdout] 5 | enum List {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Messenger` is never used
[INFO] [stdout]   --> src/refcell.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait Messenger {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LimitTracker` is never constructed
[INFO] [stdout]   --> src/refcell.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct LimitTracker<'a, T: Messenger> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `set_value` are never used
[INFO] [stdout]   --> src/refcell.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | / impl<'a, T> LimitTracker<'a, T>
[INFO] [stdout] 21 | | where
[INFO] [stdout] 22 | |     T: Messenger,
[INFO] [stdout]    | |_________________- associated items in this implementation
[INFO] [stdout] 23 |   {
[INFO] [stdout] 24 |       pub fn new(messenger: &'a T, max: usize) -> LimitTracker<'a, T> {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |       pub fn set_value(&mut self, value: usize) {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/weak.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weak_run` is never used
[INFO] [stdout]   --> src/weak.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn weak_run() {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `threads_run` is never used
[INFO] [stdout]  --> src/threads.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn threads_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `channels_run` is never used
[INFO] [stdout]  --> src/channels.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn channels_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutes_run` is never used
[INFO] [stdout]  --> src/mutes.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn mutes_run() {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/pattern.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Point {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pattern_run` is never used
[INFO] [stdout]  --> src/pattern.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn pattern_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `COUNTER` is never used
[INFO] [stdout]  --> src/unsafety.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | static mut COUNTER: i32 = 10; 
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unsafety_run` is never used
[INFO] [stdout]  --> src/unsafety.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn unsafety_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs` is never used
[INFO] [stdout]  --> src/unsafety.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 |     fn abs(i: i32) -> i32;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `functions_run` is never used
[INFO] [stdout]  --> src/functions.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn functions_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invoke1` is never used
[INFO] [stdout]   --> src/macros.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn invoke1() {}
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pancakes` is never constructed
[INFO] [stdout]   --> src/macros.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct Pancakes;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `index` is never used
[INFO] [stdout]   --> src/macros.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn index(input: String) -> String {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `macros_run` is never used
[INFO] [stdout]   --> src/macros.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn macros_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_run` is never used
[INFO] [stdout]  --> src/read.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn read_run() {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S` is never constructed
[INFO] [stdout]  --> src/borrow.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct S {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/borrow.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn test<'a>(arg: &'a S) -> &'a i32 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test1` is never used
[INFO] [stdout]   --> src/borrow.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn test1<'a, 'b>(arg: &'a S) -> &'b i32 where 'a:'b {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `joint` is never used
[INFO] [stdout]   --> src/borrow.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn joint() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `seperate` is never used
[INFO] [stdout]   --> src/borrow.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn seperate() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `r` is never used
[INFO] [stdout]   --> src/borrow.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn r() -> &'static str {
[INFO] [stdout]    |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_run` is never used
[INFO] [stdout]   --> src/borrow.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn borrow_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SharedValue` is never constructed
[INFO] [stdout]  --> src/smart_pointer.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct SharedValue {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `smart_pointer_run` is never used
[INFO] [stdout]  --> src/smart_pointer.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn smart_pointer_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_spaces` is never used
[INFO] [stdout]  --> src/cow.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn remove_spaces<'a>(input: &'a str) -> Cow<'a, str> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cow_run` is never used
[INFO] [stdout]   --> src/cow.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn cow_run() {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/mem_leak.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mem_leak_run` is never used
[INFO] [stdout]   --> src/mem_leak.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn mem_leak_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `intrin_run` is never used
[INFO] [stdout]  --> src/intrin.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn intrin_run() {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `T1` is never used
[INFO] [stdout]  --> src/variant.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait T1 {
[INFO] [stdout]   |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `T2` is never used
[INFO] [stdout]  --> src/variant.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | trait T2: T1 {
[INFO] [stdout]   |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `T3` is never used
[INFO] [stdout]  --> src/variant.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | trait T3: T2 {
[INFO] [stdout]   |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ST1` is never constructed
[INFO] [stdout]   --> src/variant.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct ST1 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ST2` is never constructed
[INFO] [stdout]   --> src/variant.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct ST2 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ST3` is never constructed
[INFO] [stdout]   --> src/variant.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct ST3 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo1` is never used
[INFO] [stdout]   --> src/variant.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn echo1(x: & dyn T1) -> () {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo2` is never used
[INFO] [stdout]   --> src/variant.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn echo2(x: & dyn T2) -> () {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo3` is never used
[INFO] [stdout]   --> src/variant.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn echo3(x: & dyn T3) -> () {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `high` is never used
[INFO] [stdout]   --> src/variant.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn high<F>(f1: &F) where F: Fn(& dyn T2) -> () {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variant_run` is never used
[INFO] [stdout]   --> src/variant.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn variant_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ch3_run` is never used
[INFO] [stdout]  --> src/ch3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn ch3_run() {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COUNT` is never used
[INFO] [stdout]  --> src/mutexs.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const COUNT: u32 = 1000000;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutexs_run` is never used
[INFO] [stdout]  --> src/mutexs.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn mutexs_run() {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `barrier_run` is never used
[INFO] [stdout]  --> src/barrier.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn barrier_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `condvar_run` is never used
[INFO] [stdout]  --> src/condvar.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn condvar_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter1_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn chapter1_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter3_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter3_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter4.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn echo(x: &String) -> &String {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add1` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter4.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn add1(t: (i32, i32)) -> i32 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add2` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter4.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn add2((x, y): (i32, i32)) -> i32 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter4_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter4.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn chapter4_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter5_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter5.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter5_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `func` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter5.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     impl T {
[INFO] [stdout]    |     ------ associated function in this implementation
[INFO] [stdout] 27 |         fn func(this: &Self) -> () {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_arr` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter6.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn show_arr(xs: [i32; 5]) {
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter6_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter6.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn chapter6_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `panic_with_i32` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter8.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn panic_with_i32(x: i32) -> ! {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter8_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter8.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn chapter8_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter9_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter9.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter9_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `T` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter11.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct T {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter11_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter11.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn chapter11_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_less` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter12.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn get_less<'a, 'b>(x: &'a i32, y: &'b i32) -> &'b i32
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_str` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter12.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn get_str(s: &String) -> &str {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter12_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter12.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn chapter12_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter13_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter13.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter13_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CellV1` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter15.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct CellV1<T> {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set`, and `get` are never used
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:8:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T> CellV1<T> {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout]  8 |     fn new(v: T) -> CellV1<T> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     fn set<'a, 'b>(&'a self, v: &'b T) 
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn get(&self) -> T where T: Copy {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter15_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn chapter15_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter16_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn chapter16_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter17_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter17.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn chapter17_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter18_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter18.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter18_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter19_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter19.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn chapter19_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Zero` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter20.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Zero {}
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NonZero` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter20.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct NonZero {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `T` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter20.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct T { dropped: bool }
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl T {
[INFO] [stdout]    | ------ associated function in this implementation
[INFO] [stdout] 12 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `R` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct R<'a> {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `set_ref` are never used
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<'a> R<'a> {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 28 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn set_ref<'b :'a>(&mut self, ptr: &'b T) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter20_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn chapter20_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_option` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter21.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn compare_option<T>(first: Option<T>, second: Option<T>) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn max<T>(a: T, b: T) -> T where T: PartialOrd {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Iter` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | trait Iter {
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_iter` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn use_iter<ITEM, ITER>(mut iter: ITER)
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Graph` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 | trait Graph {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter21_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn chapter21_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_adder` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter22.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn make_adder(x: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call_with_closure` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter22.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn call_with_closure<F>(some_closure: F) -> i32
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `static_dispatch` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn static_dispatch<F>(closure: &F)
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dynamic_dispatch` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn dynamic_dispatch(closure: &dyn Fn(i32) -> i32)
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter22_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn chapter22_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Bird` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter23.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | trait Bird {
[INFO] [stdout]   |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Duck` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter23.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Duck;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Swan` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter23.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Swan;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn test<T: Bird>(bird: T) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Animal` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | trait Animal<'a> {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Flamingo` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct Flamingo<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Crocdile` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | struct Crocdile<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_animal_name` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn show_animal_name<'a, T: Animal<'a>>(animal: &'a T) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_traitobject` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn print_traitobject(p: &dyn Bird) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Phone` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 | trait Phone {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `iPhone` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct iPhone<'a> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SomeTrait` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:88:7
[INFO] [stdout]    |
[INFO] [stdout] 88 | trait SomeTrait {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bang` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Bang;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:100:4
[INFO] [stdout]     |
[INFO] [stdout] 100 | fn multiply(m: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_vecs_explicit_return_type` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn combine_vecs_explicit_return_type(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_vecs` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:118:4
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn combine_vecs(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `do_impl_return` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn do_impl_return() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter23_run` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn chapter23_run() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BPerson` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter24.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct BPerson {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl BPerson {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 11 |     fn new(first: &str, last: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumberGenerator` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct NumberGenerator {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter24_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn chapter24_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 85 |     impl Person {
[INFO] [stdout]    |     ----------- associated function in this implementation
[INFO] [stdout] 86 |         fn new(first: &str, last: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter25_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter25.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter25_run() {}
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `overflow_run` is never used
[INFO] [stdout]  --> src/overflow.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn overflow_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused comparison that must be used
[INFO] [stdout]   --> src/basic.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         number % 2 == 0;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the comparison produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let _ = number % 2 == 0;
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]  --> src/errors.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     io::stdin().read_line(&mut n);
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let _ = io::stdin().read_line(&mut n);
[INFO] [stdout]   |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `INITIAL` should have a snake case name
[INFO] [stdout]   --> src/lifetime.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let INITIAL = 10;
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `initial`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/unsafety.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |         println!("now COUNTER is {}", COUNTER);
[INFO] [stdout]    |                                       ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     drop(v1);
[INFO] [stdout]    |     ^^^^^--^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          argument has type `i32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]    |
[INFO] [stdout] 30 -     drop(v1);
[INFO] [stdout] 30 +     let _ = v1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: casting references to a bigger memory layout than the backing allocation is undefined behavior, even if the reference is unused
[INFO] [stdout]   --> src/head_first_rust/chapter19.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let raw_mut = &mut y as *mut u32 as *mut i32 as *mut i64; // 这是安全的
[INFO] [stdout]    |                   ------------------------------------------
[INFO] [stdout]    |                   |    |
[INFO] [stdout]    |                   |    backing allocation comes from here
[INFO] [stdout]    |                   casting happened here
[INFO] [stdout] ...
[INFO] [stdout] 13 |         *raw_mut = -1; // 这是不安全的，必须在 unsafe 块中才能通过编译
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: casting from `u32` (4 bytes) to `i64` (8 bytes)
[INFO] [stdout]    = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.97s
[INFO] running `Command { std: "docker" "inspect" "b88534ff1b33ea85e5a5ff4b3cc585644eb99be46bbfce9bb132dde0b835b018", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b88534ff1b33ea85e5a5ff4b3cc585644eb99be46bbfce9bb132dde0b835b018", kill_on_drop: false }`
[INFO] [stdout] b88534ff1b33ea85e5a5ff4b3cc585644eb99be46bbfce9bb132dde0b835b018
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1762c2ec40089e467f98d56019a0b8ccaa83d0d5aa413f2f00e6dcf5c6e1e15b
[INFO] running `Command { std: "docker" "start" "-a" "1762c2ec40089e467f98d56019a0b8ccaa83d0d5aa413f2f00e6dcf5c6e1e15b", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `quote::ToTokens`
[INFO] [stdout]  --> attr_macro/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quote::ToTokens;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `syn`
[INFO] [stdout]  --> attr_macro/src/lib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use syn;
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]   --> src/lib.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct Rectangle {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_hold` is never used
[INFO] [stdout]   --> src/lib.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 46 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prints_and_returns_10` is never used
[INFO] [stdout]   --> src/lib.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn prints_and_returns_10(a: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_to_waitlist` is never used
[INFO] [stdout]  --> src/lib.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 |         pub fn add_to_waitlist() {
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `seasonal_fruit` is never read
[INFO] [stdout]   --> src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub struct Breakfast {
[INFO] [stdout]    |                --------- field in this struct
[INFO] [stdout] 12 |         pub toast: String,
[INFO] [stdout] 13 |         seasonal_fruit: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-playground v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] attr: ""
[INFO] [stdout] item: "fn invoke1() {}"
[INFO] [stdout] ast is TokenStream [Ident { ident: "struct", span: #0 bytes(27967..27973) }, Ident { ident: "Pancakes", span: #0 bytes(27974..27982) }, Punct { ch: ';', spacing: Alone, span: #0 bytes(27982..27983) }]
[INFO] [stdout] name is Pancakes
[INFO] [stdout] gen into is impl HelloMacro for Pancakes
[INFO] [stdout] {
[INFO] [stdout]     fn hello_macro()
[INFO] [stdout]     { println! ("Hello, Macro! My name is {}!", stringify! (Pancakes)); }
[INFO] [stdout] }
[INFO] [stdout] attr is TokenStream [Ident { ident: "GET", span: #0 bytes(27993..27996) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(27996..27997) }, Literal { kind: Str, symbol: "/", suffix: None, span: #0 bytes(27998..28001) }]
[INFO] [stdout] func is TokenStream [Ident { ident: "pub", span: #0 bytes(28004..28007) }, Ident { ident: "fn", span: #0 bytes(28008..28010) }, Ident { ident: "index", span: #0 bytes(28011..28016) }, Group { delimiter: Parenthesis, stream: TokenStream [Ident { ident: "input", span: #0 bytes(28017..28022) }, Punct { ch: ':', spacing: Alone, span: #0 bytes(28022..28023) }, Ident { ident: "String", span: #0 bytes(28024..28030) }], span: #0 bytes(28016..28031) }, Punct { ch: '-', spacing: Joint, span: #0 bytes(28032..28033) }, Punct { ch: '>', spacing: Alone, span: #0 bytes(28033..28034) }, Ident { ident: "String", span: #0 bytes(28035..28041) }, Group { delimiter: Brace, stream: TokenStream [Ident { ident: "input", span: #0 bytes(28048..28053) }], span: #0 bytes(28042..28055) }]
[INFO] [stdout] token is Ident { ident: "GET", span: #0 bytes(27993..27996) }
[INFO] [stdout] method is GET
[INFO] [stdout] token is Punct { ch: ',', spacing: Alone, span: #0 bytes(27996..27997) }
[INFO] [stdout] others is ,
[INFO] [stdout] token is Literal { kind: Str, symbol: "/", suffix: None, span: #0 bytes(27998..28001) }
[INFO] [stdout] path is "/"
[INFO] [stdout] warning: function `add_to_waitlist` is never used
[INFO] [stdout]  --> src/lib.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 |         pub fn add_to_waitlist() {
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `seasonal_fruit` is never read
[INFO] [stdout]   --> src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub struct Breakfast {
[INFO] [stdout]    |                --------- field in this struct
[INFO] [stdout] 12 |         pub toast: String,
[INFO] [stdout] 13 |         seasonal_fruit: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]  --> src/borrow.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{ops::{Drop, Deref}, borrow::Borrow};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/head_first_rust/chapter1.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |     struct Foo {};
[INFO] [stdout]    |                  ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:43:43
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn function_ptr(x: i32)->i32 { x * 4 };
[INFO] [stdout]    |                                           ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `iPhone` should have an upper camel case name
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct iPhone<'a> {
[INFO] [stdout]    |        ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IPhone`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be in the root module
[INFO] [stdout]  --> src/head_first_rust/chapter26.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(get_type_id)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/basic.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut x1 = 10;
[INFO] [stdout]   |         ----^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/basic.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut i1: u8 = 254;
[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]   --> src/basic.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut n1 = Box::new(31_i32);
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/owner.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let s = String::from("hello");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/owner.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let s = "abcdefg";
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r2`
[INFO] [stdout]   --> src/owner.rs:40:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let r2 = &mut ss_copy;
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/owner.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut hw = String::from("Hello World!");
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `greeting_file`
[INFO] [stdout]   --> src/errors.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let greeting_file = match greeting_file_result {
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_greeting_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/errors.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut m = [1, 2, 3];
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `INITIAL`
[INFO] [stdout]   --> src/lifetime.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let INITIAL = 10;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_INITIAL`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `r` is assigned to, but never used
[INFO] [stdout]   --> src/lifetime.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let r;
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_r` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `r` is never read
[INFO] [stdout]   --> src/lifetime.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         r = &x;
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/pointer.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let y = &x;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/pointer.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let d = CustomSmartPointer {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/pattern.rs:18:20
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/pattern.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let Point { x: a, y: b } = p;
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/pattern.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 |         ( x, rest @ _, ..) => println!("second is {}", rest),
[INFO] [stdout]    |           ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr`
[INFO] [stdout]   --> src/unsafety.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let addr = 0x309a5f9ccusize;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `var` is never read
[INFO] [stdout]   --> src/borrow.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut var = 0_i32;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s2` is never read
[INFO] [stdout]   --> src/borrow.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let mut s2 = S { v: 12 };
[INFO] [stdout]    |             ^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/borrow.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut x = 1_i32;
[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]   --> src/borrow.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let mut x1 = &x;
[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]   --> src/cow.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let mut ss = result1.to_mut();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `guess`
[INFO] [stdout]  --> src/ch3.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout]   |         ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let _guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout]   |         +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `COUNT`
[INFO] [stdout]   |
[INFO] [stdout] 2 -     let guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout] 2 +     let head_first_rust::chapter18::chapter18_run::COUNT: u32 = "42".parse().expect("Not a number!");
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r1_clone_v`
[INFO] [stdout]    --> src/head_first_rust/chapter1.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let r1_clone_v = r1_value;
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1_clone_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num3`
[INFO] [stdout]   --> src/head_first_rust/chapter3.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let num3 = num1;
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_num3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f2`
[INFO] [stdout]   --> src/head_first_rust/chapter3.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let f2 = f1;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_f2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `add` is never read
[INFO] [stdout]   --> src/head_first_rust/chapter4.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let mut add: fn((i32, i32)) -> i32 = add1 as fn((i32, i32)) -> i32;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fs1`
[INFO] [stdout]   --> src/head_first_rust/chapter6.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let fs1 = fs;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_fs1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let c = b;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v4`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let v4 = v1;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v5`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let v5 = v2;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v6`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let v6 = v3;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v8`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let v8 = v7;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v10`
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let v10 = v9; 
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_v10`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]  --> src/head_first_rust/chapter12.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn get_less<'a, 'b>(x: &'a i32, y: &'b i32) -> &'b i32
[INFO] [stdout]   |                     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/head_first_rust/chapter12.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let s = String::from("hehe");
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |             let p = &self.value as *const T as *mut T;
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn set<'a, 'b>(&'a self, v: &'b T) 
[INFO] [stdout]    |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |         unsafe {
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shared2`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let shared2 = &shared1;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let p2 = &p1[0];
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s1`
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let s1 = s.clone(); //(1)
[INFO] [stdout]   |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ps1`
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let ps1 = (*s).clone(); //(2)
[INFO] [stdout]   |         ^^^ help: if this is intentional, prefix it with an underscore: `_ps1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pps1`
[INFO] [stdout]   --> src/head_first_rust/chapter16.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let pps1 = (**s).clone(); //(3)
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pps1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rs1`
[INFO] [stdout]   --> src/head_first_rust/chapter16.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let rs1 = result1.as_ref();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_rs1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:65:21
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |     let mut vec_20_nonzero: Vec<NonZero> = Vec::with_capacity(20);
[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]   --> src/head_first_rust/chapter20.rs:65:14
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut a, b) : (R, T) = (R::new(), T::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]   --> src/head_first_rust/chapter22.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mut closure = |x: i32| -> i32 { x + 2 };
[INFO] [stdout]    |         ----^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v1`
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let v1 = Vec::<i32>::new();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v2`
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let v2: Vec<String> = Vec::with_capacity(1000);
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v3`
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let v3 = vec![1, 2, 3];
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/overflow.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 let y: [u64; 10000000] = [1; 10000000];
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `guess` is never used
[INFO] [stdout]  --> src/guess.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub fn guess() {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variable_run` is never used
[INFO] [stdout]  --> src/basic.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn variable_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `take_ownership` is never used
[INFO] [stdout]  --> src/owner.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn take_ownership(s: String) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change` is never used
[INFO] [stdout]  --> src/owner.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn change(s: &mut String) {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dangle` is never used
[INFO] [stdout]  --> src/owner.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn dangle() {
[INFO] [stdout]   |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_word` is never used
[INFO] [stdout]   --> src/owner.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn first_word(s: &String) -> &str {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `owner_run` is never used
[INFO] [stdout]   --> src/owner.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn owner_run() {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]  --> src/strukt.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct User {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserRef` is never constructed
[INFO] [stdout]  --> src/strukt.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct UserRef<'a, 'b> {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]   --> src/strukt.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Rectangle {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `area`, `set_width`, and `can_hold` are never used
[INFO] [stdout]   --> src/strukt.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Rectangle {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 23 |     fn area(&self) -> u64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     fn set_width(&mut self, width: u64) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build` is never used
[INFO] [stdout]   --> src/strukt.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Rectangle {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 35 |     fn build(width: u64, height: u64) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `struct_run` is never used
[INFO] [stdout]   --> src/strukt.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn struct_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IpAddrNew` is never used
[INFO] [stdout]  --> src/enumer.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum IpAddrNew {
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]  --> src/enumer.rs:8:6
[INFO] [stdout]   |
[INFO] [stdout] 8 | enum Message {
[INFO] [stdout]   |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `call` is never used
[INFO] [stdout]   --> src/enumer.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Message {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 16 |    fn call(&self) {
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumer_run` is never used
[INFO] [stdout]   --> src/enumer.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn enumer_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Coin` is never used
[INFO] [stdout]  --> src/matcher.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Coin {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_in_cents` is never used
[INFO] [stdout]  --> src/matcher.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn value_in_cents(coin: Coin) -> u8 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus_one` is never used
[INFO] [stdout]   --> src/matcher.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn plus_one(x: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_run` is never used
[INFO] [stdout]   --> src/matcher.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn match_run() {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collections_run` is never used
[INFO] [stdout]  --> src/collections.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn collections_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hashmap_run` is never used
[INFO] [stdout]  --> src/hashmap.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn hashmap_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `errors_run` is never used
[INFO] [stdout]  --> src/errors.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn errors_run() {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/generic.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Point<T> {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `x` is never used
[INFO] [stdout]  --> src/generic.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | impl<T> Point<T> {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 6 |     fn x(&self) -> &T {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `distance_from_origin` is never used
[INFO] [stdout]   --> src/generic.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Point<f32> {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 11 |     fn distance_from_origin(&self) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic_run` is never used
[INFO] [stdout]   --> src/generic.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn generic_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Summary` is never used
[INFO] [stdout]  --> src/traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait Summary {
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NewsArticle` is never constructed
[INFO] [stdout]  --> src/traits.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct NewsArticle {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tweet` is never constructed
[INFO] [stdout]   --> src/traits.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Tweet {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]   --> src/traits.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | struct Point {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Pilot` is never used
[INFO] [stdout]   --> src/traits.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | trait Pilot {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Wizard` is never used
[INFO] [stdout]   --> src/traits.rs:51:7
[INFO] [stdout]    |
[INFO] [stdout] 51 | trait Wizard {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Human` is never constructed
[INFO] [stdout]   --> src/traits.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct Human;
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fly` is never used
[INFO] [stdout]   --> src/traits.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl Human {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 70 |     fn fly(&self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Animal` is never used
[INFO] [stdout]   --> src/traits.rs:75:7
[INFO] [stdout]    |
[INFO] [stdout] 75 | trait Animal {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Dog` is never constructed
[INFO] [stdout]   --> src/traits.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct Dog;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `baby_name` is never used
[INFO] [stdout]   --> src/traits.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | impl Dog {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 82 |     fn baby_name() -> String {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OutlinePrint` is never used
[INFO] [stdout]   --> src/traits.rs:95:7
[INFO] [stdout]    |
[INFO] [stdout] 95 | trait OutlinePrint: fmt::Display {
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trais_run` is never used
[INFO] [stdout]    --> src/traits.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn trais_run() {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `D` is never constructed
[INFO] [stdout]  --> src/lifetime.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct D(i32);
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]   --> src/lifetime.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lifetime_run` is never used
[INFO] [stdout]   --> src/lifetime.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn lifetime_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_run` is never used
[INFO] [stdout]  --> src/iter.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn iter_run() {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ListSmart` is never used
[INFO] [stdout]   --> src/pointer.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum ListSmart {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ListRc` is never used
[INFO] [stdout]   --> src/pointer.rs:17:6
[INFO] [stdout]    |
[INFO] [stdout] 17 | enum ListRc {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pointer_run` is never used
[INFO] [stdout]   --> src/pointer.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn pointer_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/pointer.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 46 |     impl<T> MyBox<T> {
[INFO] [stdout]    |     ---------------- associated function in this implementation
[INFO] [stdout] 47 |         fn new(x: T) -> MyBox<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> src/refcell.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 |     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     fields in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `List` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]   |
[INFO] [stdout] 6 -     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stdout] 6 +     Cons((), ()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `List` is never used
[INFO] [stdout]   --> src/refcell.rs:83:10
[INFO] [stdout]    |
[INFO] [stdout] 83 |     enum List {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/weak.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weak_run` is never used
[INFO] [stdout]   --> src/weak.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn weak_run() {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `threads_run` is never used
[INFO] [stdout]  --> src/threads.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn threads_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `channels_run` is never used
[INFO] [stdout]  --> src/channels.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn channels_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutes_run` is never used
[INFO] [stdout]  --> src/mutes.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn mutes_run() {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/pattern.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Point {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pattern_run` is never used
[INFO] [stdout]  --> src/pattern.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn pattern_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `COUNTER` is never used
[INFO] [stdout]  --> src/unsafety.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | static mut COUNTER: i32 = 10; 
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unsafety_run` is never used
[INFO] [stdout]  --> src/unsafety.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn unsafety_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs` is never used
[INFO] [stdout]  --> src/unsafety.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 |     fn abs(i: i32) -> i32;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `functions_run` is never used
[INFO] [stdout]  --> src/functions.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn functions_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invoke1` is never used
[INFO] [stdout]   --> src/macros.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn invoke1() {}
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pancakes` is never constructed
[INFO] [stdout]   --> src/macros.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct Pancakes;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `index` is never used
[INFO] [stdout]   --> src/macros.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn index(input: String) -> String {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `macros_run` is never used
[INFO] [stdout]   --> src/macros.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn macros_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_run` is never used
[INFO] [stdout]  --> src/read.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn read_run() {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S` is never constructed
[INFO] [stdout]  --> src/borrow.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct S {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/borrow.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn test<'a>(arg: &'a S) -> &'a i32 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test1` is never used
[INFO] [stdout]   --> src/borrow.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn test1<'a, 'b>(arg: &'a S) -> &'b i32 where 'a:'b {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `joint` is never used
[INFO] [stdout]   --> src/borrow.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn joint() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `seperate` is never used
[INFO] [stdout]   --> src/borrow.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn seperate() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `r` is never used
[INFO] [stdout]   --> src/borrow.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn r() -> &'static str {
[INFO] [stdout]    |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_run` is never used
[INFO] [stdout]   --> src/borrow.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn borrow_run() {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SharedValue` is never constructed
[INFO] [stdout]  --> src/smart_pointer.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct SharedValue {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `smart_pointer_run` is never used
[INFO] [stdout]  --> src/smart_pointer.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn smart_pointer_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_spaces` is never used
[INFO] [stdout]  --> src/cow.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn remove_spaces<'a>(input: &'a str) -> Cow<'a, str> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cow_run` is never used
[INFO] [stdout]   --> src/cow.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn cow_run() {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/mem_leak.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mem_leak_run` is never used
[INFO] [stdout]   --> src/mem_leak.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn mem_leak_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `intrin_run` is never used
[INFO] [stdout]  --> src/intrin.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn intrin_run() {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `T1` is never used
[INFO] [stdout]  --> src/variant.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait T1 {
[INFO] [stdout]   |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `T2` is never used
[INFO] [stdout]  --> src/variant.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | trait T2: T1 {
[INFO] [stdout]   |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `T3` is never used
[INFO] [stdout]  --> src/variant.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | trait T3: T2 {
[INFO] [stdout]   |       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ST1` is never constructed
[INFO] [stdout]   --> src/variant.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct ST1 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ST2` is never constructed
[INFO] [stdout]   --> src/variant.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct ST2 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ST3` is never constructed
[INFO] [stdout]   --> src/variant.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct ST3 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo1` is never used
[INFO] [stdout]   --> src/variant.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn echo1(x: & dyn T1) -> () {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo2` is never used
[INFO] [stdout]   --> src/variant.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn echo2(x: & dyn T2) -> () {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo3` is never used
[INFO] [stdout]   --> src/variant.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn echo3(x: & dyn T3) -> () {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `high` is never used
[INFO] [stdout]   --> src/variant.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn high<F>(f1: &F) where F: Fn(& dyn T2) -> () {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variant_run` is never used
[INFO] [stdout]   --> src/variant.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn variant_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ch3_run` is never used
[INFO] [stdout]  --> src/ch3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn ch3_run() {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COUNT` is never used
[INFO] [stdout]  --> src/mutexs.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const COUNT: u32 = 1000000;
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutexs_run` is never used
[INFO] [stdout]  --> src/mutexs.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn mutexs_run() {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `barrier_run` is never used
[INFO] [stdout]  --> src/barrier.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn barrier_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `condvar_run` is never used
[INFO] [stdout]  --> src/condvar.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn condvar_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter1_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn chapter1_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter3_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter3_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `echo` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter4.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn echo(x: &String) -> &String {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add1` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter4.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn add1(t: (i32, i32)) -> i32 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add2` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter4.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn add2((x, y): (i32, i32)) -> i32 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter4_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter4.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn chapter4_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter5_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter5.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter5_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `func` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter5.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     impl T {
[INFO] [stdout]    |     ------ associated function in this implementation
[INFO] [stdout] 27 |         fn func(this: &Self) -> () {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_arr` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter6.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn show_arr(xs: [i32; 5]) {
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter6_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter6.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn chapter6_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `panic_with_i32` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter8.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn panic_with_i32(x: i32) -> ! {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter8_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter8.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn chapter8_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter9_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter9.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter9_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `T` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter11.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct T {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter11_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter11.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn chapter11_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_less` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter12.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn get_less<'a, 'b>(x: &'a i32, y: &'b i32) -> &'b i32
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_str` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter12.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn get_str(s: &String) -> &str {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter12_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter12.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn chapter12_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter13_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter13.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter13_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CellV1` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter15.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct CellV1<T> {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set`, and `get` are never used
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:8:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T> CellV1<T> {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout]  8 |     fn new(v: T) -> CellV1<T> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     fn set<'a, 'b>(&'a self, v: &'b T) 
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn get(&self) -> T where T: Copy {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter15_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter15.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn chapter15_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter16_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter16.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn chapter16_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter17_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter17.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn chapter17_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter18_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter18.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter18_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter19_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter19.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn chapter19_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Zero` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter20.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Zero {}
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NonZero` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter20.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct NonZero {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `T` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter20.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct T { dropped: bool }
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl T {
[INFO] [stdout]    | ------ associated function in this implementation
[INFO] [stdout] 12 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `R` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct R<'a> {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `set_ref` are never used
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<'a> R<'a> {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 28 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn set_ref<'b :'a>(&mut self, ptr: &'b T) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter20_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter20.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub fn chapter20_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_option` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter21.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn compare_option<T>(first: Option<T>, second: Option<T>) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn max<T>(a: T, b: T) -> T where T: PartialOrd {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Iter` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | trait Iter {
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_iter` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn use_iter<ITEM, ITER>(mut iter: ITER)
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Graph` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 | trait Graph {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter21_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter21.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn chapter21_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_adder` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter22.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn make_adder(x: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call_with_closure` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter22.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn call_with_closure<F>(some_closure: F) -> i32
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `static_dispatch` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn static_dispatch<F>(closure: &F)
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dynamic_dispatch` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn dynamic_dispatch(closure: &dyn Fn(i32) -> i32)
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter22_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter22.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn chapter22_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Bird` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter23.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | trait Bird {
[INFO] [stdout]   |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Duck` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter23.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Duck;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Swan` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter23.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Swan;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn test<T: Bird>(bird: T) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Animal` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | trait Animal<'a> {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Flamingo` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct Flamingo<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Crocdile` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | struct Crocdile<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_animal_name` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn show_animal_name<'a, T: Animal<'a>>(animal: &'a T) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_traitobject` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn print_traitobject(p: &dyn Bird) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Phone` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 | trait Phone {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `iPhone` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct iPhone<'a> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SomeTrait` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:88:7
[INFO] [stdout]    |
[INFO] [stdout] 88 | trait SomeTrait {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bang` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter23.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Bang;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:100:4
[INFO] [stdout]     |
[INFO] [stdout] 100 | fn multiply(m: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_vecs_explicit_return_type` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn combine_vecs_explicit_return_type(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combine_vecs` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:118:4
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn combine_vecs(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `do_impl_return` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn do_impl_return() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter23_run` is never used
[INFO] [stdout]    --> src/head_first_rust/chapter23.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn chapter23_run() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BPerson` is never constructed
[INFO] [stdout]  --> src/head_first_rust/chapter24.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct BPerson {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl BPerson {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 11 |     fn new(first: &str, last: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumberGenerator` is never constructed
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct NumberGenerator {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter24_run` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn chapter24_run() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/head_first_rust/chapter24.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 85 |     impl Person {
[INFO] [stdout]    |     ----------- associated function in this implementation
[INFO] [stdout] 86 |         fn new(first: &str, last: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chapter25_run` is never used
[INFO] [stdout]  --> src/head_first_rust/chapter25.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn chapter25_run() {}
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `overflow_run` is never used
[INFO] [stdout]  --> src/overflow.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn overflow_run() {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused comparison that must be used
[INFO] [stdout]   --> src/basic.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         number % 2 == 0;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ the comparison produces a value
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let _ = number % 2 == 0;
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]  --> src/errors.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     io::stdin().read_line(&mut n);
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let _ = io::stdin().read_line(&mut n);
[INFO] [stdout]   |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `INITIAL` should have a snake case name
[INFO] [stdout]   --> src/lifetime.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let INITIAL = 10;
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `initial`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/unsafety.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |         println!("now COUNTER is {}", COUNTER);
[INFO] [stdout]    |                                       ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stdout]   --> src/head_first_rust/chapter11.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     drop(v1);
[INFO] [stdout]    |     ^^^^^--^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          argument has type `i32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]    |
[INFO] [stdout] 30 -     drop(v1);
[INFO] [stdout] 30 +     let _ = v1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: casting references to a bigger memory layout than the backing allocation is undefined behavior, even if the reference is unused
[INFO] [stdout]   --> src/head_first_rust/chapter19.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let raw_mut = &mut y as *mut u32 as *mut i32 as *mut i64; // 这是安全的
[INFO] [stdout]    |                   ------------------------------------------
[INFO] [stdout]    |                   |    |
[INFO] [stdout]    |                   |    backing allocation comes from here
[INFO] [stdout]    |                   casting happened here
[INFO] [stdout] ...
[INFO] [stdout] 13 |         *raw_mut = -1; // 这是不安全的，必须在 unsafe 块中才能通过编译
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: casting from `u32` (4 bytes) to `i64` (8 bytes)
[INFO] [stdout]    = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.96s
[INFO] running `Command { std: "docker" "inspect" "1762c2ec40089e467f98d56019a0b8ccaa83d0d5aa413f2f00e6dcf5c6e1e15b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1762c2ec40089e467f98d56019a0b8ccaa83d0d5aa413f2f00e6dcf5c6e1e15b", kill_on_drop: false }`
[INFO] [stdout] 1762c2ec40089e467f98d56019a0b8ccaa83d0d5aa413f2f00e6dcf5c6e1e15b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 16e6351e0fb9e2d436bececf43efcc4cc7dd4459812531d734418ea6c3206497
[INFO] running `Command { std: "docker" "start" "-a" "16e6351e0fb9e2d436bececf43efcc4cc7dd4459812531d734418ea6c3206497", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `quote::ToTokens`
[INFO] [stderr]  --> attr_macro/src/lib.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use quote::ToTokens;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `syn`
[INFO] [stderr]  --> attr_macro/src/lib.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use syn;
[INFO] [stderr]   |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `attr_macro` (lib) generated 2 warnings (run `cargo fix --lib -p attr_macro` to apply 2 suggestions)
[INFO] [stderr] warning: struct `Rectangle` is never constructed
[INFO] [stderr]   --> src/lib.rs:40:8
[INFO] [stderr]    |
[INFO] [stderr] 40 | struct Rectangle {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `can_hold` is never used
[INFO] [stderr]   --> src/lib.rs:46:8
[INFO] [stderr]    |
[INFO] [stderr] 45 | impl Rectangle {
[INFO] [stderr]    | -------------- method in this implementation
[INFO] [stderr] 46 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `prints_and_returns_10` is never used
[INFO] [stderr]   --> src/lib.rs:51:4
[INFO] [stderr]    |
[INFO] [stderr] 51 | fn prints_and_returns_10(a: i32) -> i32 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_to_waitlist` is never used
[INFO] [stderr]  --> src/lib.rs:4:16
[INFO] [stderr]   |
[INFO] [stderr] 4 |         pub fn add_to_waitlist() {
[INFO] [stderr]   |                ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `seasonal_fruit` is never read
[INFO] [stderr]   --> src/lib.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub struct Breakfast {
[INFO] [stderr]    |                --------- field in this struct
[INFO] [stderr] 12 |         pub toast: String,
[INFO] [stderr] 13 |         seasonal_fruit: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_to_waitlist` is never used
[INFO] [stderr]  --> src/lib.rs:4:16
[INFO] [stderr]   |
[INFO] [stderr] 4 |         pub fn add_to_waitlist() {
[INFO] [stderr]   |                ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-playground` (lib) generated 5 warnings
[INFO] [stderr] warning: `rust-playground` (lib test) generated 2 warnings (1 duplicate)
[INFO] [stderr] warning: unused import: `Deref`
[INFO] [stderr]  --> src/borrow.rs:1:23
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{ops::{Drop, Deref}, borrow::Borrow};
[INFO] [stderr]   |                       ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> src/head_first_rust/chapter1.rs:67:18
[INFO] [stderr]    |
[INFO] [stderr] 67 |     struct Foo {};
[INFO] [stderr]    |                  ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Deref`
[INFO] [stderr]  --> src/head_first_rust/chapter16.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::ops::Deref;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> src/head_first_rust/chapter22.rs:43:43
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn function_ptr(x: i32)->i32 { x * 4 };
[INFO] [stderr]    |                                           ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: type `iPhone` should have an upper camel case name
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:74:8
[INFO] [stderr]    |
[INFO] [stderr] 74 | struct iPhone<'a> {
[INFO] [stderr]    |        ^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `IPhone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: crate-level attribute should be in the root module
[INFO] [stderr]  --> src/head_first_rust/chapter26.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![feature(get_type_id)]
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/basic.rs:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |     let mut x1 = 10;
[INFO] [stderr]   |         ----^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/basic.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let mut i1: u8 = 254;
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/basic.rs:64:9
[INFO] [stderr]    |
[INFO] [stderr] 64 |     let mut n1 = Box::new(31_i32);
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s`
[INFO] [stderr]   --> src/owner.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let s = String::from("hello");
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s`
[INFO] [stderr]   --> src/owner.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |     let s = "abcdefg";
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r2`
[INFO] [stderr]   --> src/owner.rs:40:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |         let r2 = &mut ss_copy;
[INFO] [stderr]    |             ^^ help: if this is intentional, prefix it with an underscore: `_r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/owner.rs:56:9
[INFO] [stderr]    |
[INFO] [stderr] 56 |     let mut hw = String::from("Hello World!");
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `greeting_file`
[INFO] [stderr]   --> src/errors.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let greeting_file = match greeting_file_result {
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_greeting_file`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/errors.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut m = [1, 2, 3];
[INFO] [stderr]   |         ----^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `INITIAL`
[INFO] [stderr]   --> src/lifetime.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let INITIAL = 10;
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_INITIAL`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `r` is assigned to, but never used
[INFO] [stderr]   --> src/lifetime.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let r;
[INFO] [stderr]    |         ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: consider using `_r` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `r` is never read
[INFO] [stderr]   --> src/lifetime.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |         r = &x;
[INFO] [stderr]    |         ^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `y`
[INFO] [stderr]   --> src/pointer.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |     let y = &x;
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `d`
[INFO] [stderr]   --> src/pointer.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |     let d = CustomSmartPointer {
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `a`
[INFO] [stderr]   --> src/pattern.rs:18:20
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let Point { x: a, y: b } = p;
[INFO] [stderr]    |                    ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `b`
[INFO] [stderr]   --> src/pattern.rs:18:26
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let Point { x: a, y: b } = p;
[INFO] [stderr]    |                          ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/pattern.rs:24:11
[INFO] [stderr]    |
[INFO] [stderr] 24 |         ( x, rest @ _, ..) => println!("second is {}", rest),
[INFO] [stderr]    |           ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `addr`
[INFO] [stderr]   --> src/unsafety.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let addr = 0x309a5f9ccusize;
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_addr`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `var` is never read
[INFO] [stderr]   --> src/borrow.rs:41:13
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let mut var = 0_i32;
[INFO] [stderr]    |             ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `s2` is never read
[INFO] [stderr]   --> src/borrow.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |     let mut s2 = S { v: 12 };
[INFO] [stderr]    |             ^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/borrow.rs:64:9
[INFO] [stderr]    |
[INFO] [stderr] 64 |     let mut x = 1_i32;
[INFO] [stderr]    |         ----^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/borrow.rs:67:9
[INFO] [stderr]    |
[INFO] [stderr] 67 |     let mut x1 = &x;
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/cow.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let mut ss = result1.to_mut();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `guess`
[INFO] [stderr]  --> src/ch3.rs:2:9
[INFO] [stderr]   |
[INFO] [stderr] 2 |     let guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stderr]   |         ^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: if this is intentional, prefix it with an underscore
[INFO] [stderr]   |
[INFO] [stderr] 2 |     let _guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stderr]   |         +
[INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `COUNT`
[INFO] [stderr]   |
[INFO] [stderr] 2 -     let guess: u32 = "42".parse().expect("Not a number!");
[INFO] [stderr] 2 +     let head_first_rust::chapter18::chapter18_run::COUNT: u32 = "42".parse().expect("Not a number!");
[INFO] [stderr]   |
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r1_clone_v`
[INFO] [stderr]    --> src/head_first_rust/chapter1.rs:102:9
[INFO] [stderr]     |
[INFO] [stderr] 102 |     let r1_clone_v = r1_value;
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1_clone_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `num3`
[INFO] [stderr]   --> src/head_first_rust/chapter3.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     let num3 = num1;
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_num3`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `f2`
[INFO] [stderr]   --> src/head_first_rust/chapter3.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |     let f2 = f1;
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_f2`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `add` is never read
[INFO] [stderr]   --> src/head_first_rust/chapter4.rs:18:13
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let mut add: fn((i32, i32)) -> i32 = add1 as fn((i32, i32)) -> i32;
[INFO] [stderr]    |             ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `fs1`
[INFO] [stderr]   --> src/head_first_rust/chapter6.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let fs1 = fs;
[INFO] [stderr]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_fs1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `c`
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let c = b;
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v4`
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let v4 = v1;
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v4`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v5`
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let v5 = v2;
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v5`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v6`
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let v6 = v3;
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v6`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v8`
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let v8 = v7;
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v8`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v10`
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let v10 = v9; 
[INFO] [stderr]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_v10`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]  --> src/head_first_rust/chapter12.rs:1:21
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn get_less<'a, 'b>(x: &'a i32, y: &'b i32) -> &'b i32
[INFO] [stderr]   |                     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s`
[INFO] [stderr]   --> src/head_first_rust/chapter12.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let s = String::from("hehe");
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p`
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:16:17
[INFO] [stderr]    |
[INFO] [stderr] 16 |             let p = &self.value as *const T as *mut T;
[INFO] [stderr]    |                 ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v`
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:11:30
[INFO] [stderr]    |
[INFO] [stderr] 11 |     fn set<'a, 'b>(&'a self, v: &'b T) 
[INFO] [stderr]    |                              ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 |         unsafe {
[INFO] [stderr]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `shared2`
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:54:9
[INFO] [stderr]    |
[INFO] [stderr] 54 |     let shared2 = &shared1;
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shared2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `p2`
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:56:9
[INFO] [stderr]    |
[INFO] [stderr] 56 |     let p2 = &p1[0];
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s1`
[INFO] [stderr]  --> src/head_first_rust/chapter16.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let s1 = s.clone(); //(1)
[INFO] [stderr]   |         ^^ help: if this is intentional, prefix it with an underscore: `_s1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ps1`
[INFO] [stderr]  --> src/head_first_rust/chapter16.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     let ps1 = (*s).clone(); //(2)
[INFO] [stderr]   |         ^^^ help: if this is intentional, prefix it with an underscore: `_ps1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pps1`
[INFO] [stderr]   --> src/head_first_rust/chapter16.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let pps1 = (**s).clone(); //(3)
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pps1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rs1`
[INFO] [stderr]   --> src/head_first_rust/chapter16.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |     let rs1 = result1.as_ref();
[INFO] [stderr]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_rs1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `a`
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:65:18
[INFO] [stderr]    |
[INFO] [stderr] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stderr]    |                  ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `b`
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:65:21
[INFO] [stderr]    |
[INFO] [stderr] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stderr]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:54:9
[INFO] [stderr]    |
[INFO] [stderr] 54 |     let mut vec_20_nonzero: Vec<NonZero> = Vec::with_capacity(20);
[INFO] [stderr]    |         ----^^^^^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:65:14
[INFO] [stderr]    |
[INFO] [stderr] 65 |         let (mut a, b) : (R, T) = (R::new(), T::new());
[INFO] [stderr]    |              ----^
[INFO] [stderr]    |              |
[INFO] [stderr]    |              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/head_first_rust/chapter22.rs:38:9
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let mut closure = |x: i32| -> i32 { x + 2 };
[INFO] [stderr]    |         ----^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v1`
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |     let v1 = Vec::<i32>::new();
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v2`
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |     let v2: Vec<String> = Vec::with_capacity(1000);
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `v3`
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let v3 = vec![1, 2, 3];
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_v3`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `y`
[INFO] [stderr]   --> src/overflow.rs:10:21
[INFO] [stderr]    |
[INFO] [stderr] 10 |                 let y: [u64; 10000000] = [1; 10000000];
[INFO] [stderr]    |                     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stderr] 
[INFO] [stderr] warning: function `guess` is never used
[INFO] [stderr]  --> src/guess.rs:5:12
[INFO] [stderr]   |
[INFO] [stderr] 5 |     pub fn guess() {
[INFO] [stderr]   |            ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `variable_run` is never used
[INFO] [stderr]  --> src/basic.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn variable_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `take_ownership` is never used
[INFO] [stderr]  --> src/owner.rs:1:4
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn take_ownership(s: String) -> String {
[INFO] [stderr]   |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `change` is never used
[INFO] [stderr]  --> src/owner.rs:5:4
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn change(s: &mut String) {
[INFO] [stderr]   |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `dangle` is never used
[INFO] [stderr]  --> src/owner.rs:9:4
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn dangle() {
[INFO] [stderr]   |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `first_word` is never used
[INFO] [stderr]   --> src/owner.rs:12:4
[INFO] [stderr]    |
[INFO] [stderr] 12 | fn first_word(s: &String) -> &str {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `owner_run` is never used
[INFO] [stderr]   --> src/owner.rs:21:8
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn owner_run() {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `User` is never constructed
[INFO] [stderr]  --> src/strukt.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct User {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UserRef` is never constructed
[INFO] [stderr]  --> src/strukt.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 9 | struct UserRef<'a, 'b> {
[INFO] [stderr]   |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Rectangle` is never constructed
[INFO] [stderr]   --> src/strukt.rs:17:8
[INFO] [stderr]    |
[INFO] [stderr] 17 | struct Rectangle {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `area`, `set_width`, and `can_hold` are never used
[INFO] [stderr]   --> src/strukt.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl Rectangle {
[INFO] [stderr]    | -------------- methods in this implementation
[INFO] [stderr] 23 |     fn area(&self) -> u64 {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 26 |     fn set_width(&mut self, width: u64) {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `build` is never used
[INFO] [stderr]   --> src/strukt.rs:35:8
[INFO] [stderr]    |
[INFO] [stderr] 34 | impl Rectangle {
[INFO] [stderr]    | -------------- associated function in this implementation
[INFO] [stderr] 35 |     fn build(width: u64, height: u64) -> Self {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `struct_run` is never used
[INFO] [stderr]   --> src/strukt.rs:43:8
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn struct_run() {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `IpAddrNew` is never used
[INFO] [stderr]  --> src/enumer.rs:2:6
[INFO] [stderr]   |
[INFO] [stderr] 2 | enum IpAddrNew {
[INFO] [stderr]   |      ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Message` is never used
[INFO] [stderr]  --> src/enumer.rs:8:6
[INFO] [stderr]   |
[INFO] [stderr] 8 | enum Message {
[INFO] [stderr]   |      ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `call` is never used
[INFO] [stderr]   --> src/enumer.rs:16:7
[INFO] [stderr]    |
[INFO] [stderr] 15 | impl Message {
[INFO] [stderr]    | ------------ method in this implementation
[INFO] [stderr] 16 |    fn call(&self) {
[INFO] [stderr]    |       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `enumer_run` is never used
[INFO] [stderr]   --> src/enumer.rs:27:8
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub fn enumer_run() {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Coin` is never used
[INFO] [stderr]  --> src/matcher.rs:1:6
[INFO] [stderr]   |
[INFO] [stderr] 1 | enum Coin {
[INFO] [stderr]   |      ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `value_in_cents` is never used
[INFO] [stderr]  --> src/matcher.rs:8:4
[INFO] [stderr]   |
[INFO] [stderr] 8 | fn value_in_cents(coin: Coin) -> u8 {
[INFO] [stderr]   |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `plus_one` is never used
[INFO] [stderr]   --> src/matcher.rs:17:4
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn plus_one(x: i32) -> i32 {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `match_run` is never used
[INFO] [stderr]   --> src/matcher.rs:24:8
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub fn match_run() {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `collections_run` is never used
[INFO] [stderr]  --> src/collections.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn collections_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `hashmap_run` is never used
[INFO] [stderr]  --> src/hashmap.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn hashmap_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `errors_run` is never used
[INFO] [stderr]  --> src/errors.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn errors_run() {
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Point` is never constructed
[INFO] [stderr]  --> src/generic.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct Point<T> {
[INFO] [stderr]   |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `x` is never used
[INFO] [stderr]  --> src/generic.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | impl<T> Point<T> {
[INFO] [stderr]   | ---------------- method in this implementation
[INFO] [stderr] 6 |     fn x(&self) -> &T {
[INFO] [stderr]   |        ^
[INFO] [stderr] 
[INFO] [stderr] warning: method `distance_from_origin` is never used
[INFO] [stderr]   --> src/generic.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl Point<f32> {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] 11 |     fn distance_from_origin(&self) -> f32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `generic_run` is never used
[INFO] [stderr]   --> src/generic.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn generic_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Summary` is never used
[INFO] [stderr]  --> src/traits.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub trait Summary {
[INFO] [stderr]   |           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NewsArticle` is never constructed
[INFO] [stderr]  --> src/traits.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct NewsArticle {
[INFO] [stderr]   |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Tweet` is never constructed
[INFO] [stderr]   --> src/traits.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct Tweet {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Point` is never constructed
[INFO] [stderr]   --> src/traits.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | struct Point {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Pilot` is never used
[INFO] [stderr]   --> src/traits.rs:47:7
[INFO] [stderr]    |
[INFO] [stderr] 47 | trait Pilot {
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Wizard` is never used
[INFO] [stderr]   --> src/traits.rs:51:7
[INFO] [stderr]    |
[INFO] [stderr] 51 | trait Wizard {
[INFO] [stderr]    |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Human` is never constructed
[INFO] [stderr]   --> src/traits.rs:55:8
[INFO] [stderr]    |
[INFO] [stderr] 55 | struct Human;
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `fly` is never used
[INFO] [stderr]   --> src/traits.rs:70:8
[INFO] [stderr]    |
[INFO] [stderr] 69 | impl Human {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] 70 |     fn fly(&self) {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Animal` is never used
[INFO] [stderr]   --> src/traits.rs:75:7
[INFO] [stderr]    |
[INFO] [stderr] 75 | trait Animal {
[INFO] [stderr]    |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Dog` is never constructed
[INFO] [stderr]   --> src/traits.rs:79:8
[INFO] [stderr]    |
[INFO] [stderr] 79 | struct Dog;
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `baby_name` is never used
[INFO] [stderr]   --> src/traits.rs:82:8
[INFO] [stderr]    |
[INFO] [stderr] 81 | impl Dog {
[INFO] [stderr]    | -------- associated function in this implementation
[INFO] [stderr] 82 |     fn baby_name() -> String {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `OutlinePrint` is never used
[INFO] [stderr]   --> src/traits.rs:95:7
[INFO] [stderr]    |
[INFO] [stderr] 95 | trait OutlinePrint: fmt::Display {
[INFO] [stderr]    |       ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `trais_run` is never used
[INFO] [stderr]    --> src/traits.rs:116:8
[INFO] [stderr]     |
[INFO] [stderr] 116 | pub fn trais_run() {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `D` is never constructed
[INFO] [stderr]  --> src/lifetime.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | struct D(i32);
[INFO] [stderr]   |        ^
[INFO] [stderr] 
[INFO] [stderr] warning: function `longest` is never used
[INFO] [stderr]   --> src/lifetime.rs:11:4
[INFO] [stderr]    |
[INFO] [stderr] 11 | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `lifetime_run` is never used
[INFO] [stderr]   --> src/lifetime.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub fn lifetime_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `iter_run` is never used
[INFO] [stderr]  --> src/iter.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn iter_run() {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ListSmart` is never used
[INFO] [stderr]   --> src/pointer.rs:11:6
[INFO] [stderr]    |
[INFO] [stderr] 11 | enum ListSmart {
[INFO] [stderr]    |      ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ListRc` is never used
[INFO] [stderr]   --> src/pointer.rs:17:6
[INFO] [stderr]    |
[INFO] [stderr] 17 | enum ListRc {
[INFO] [stderr]    |      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pointer_run` is never used
[INFO] [stderr]   --> src/pointer.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn pointer_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/pointer.rs:47:12
[INFO] [stderr]    |
[INFO] [stderr] 46 |     impl<T> MyBox<T> {
[INFO] [stderr]    |     ---------------- associated function in this implementation
[INFO] [stderr] 47 |         fn new(x: T) -> MyBox<T> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]  --> src/refcell.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 |     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stderr]   |     ---- ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr]   |     |
[INFO] [stderr]   |     fields in this variant
[INFO] [stderr]   |
[INFO] [stderr]   = note: `List` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]   |
[INFO] [stderr] 6 -     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stderr] 6 +     Cons((), ()),
[INFO] [stderr]   |
[INFO] [stderr] 
[INFO] [stderr] warning: enum `List` is never used
[INFO] [stderr]   --> src/refcell.rs:83:10
[INFO] [stderr]    |
[INFO] [stderr] 83 |     enum List {
[INFO] [stderr]    |          ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Node` is never constructed
[INFO] [stderr]  --> src/weak.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | struct Node {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `weak_run` is never used
[INFO] [stderr]   --> src/weak.rs:17:8
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub fn weak_run() {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `threads_run` is never used
[INFO] [stderr]  --> src/threads.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn threads_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `channels_run` is never used
[INFO] [stderr]  --> src/channels.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn channels_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `mutes_run` is never used
[INFO] [stderr]  --> src/mutes.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn mutes_run() {
[INFO] [stderr]   |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Point` is never constructed
[INFO] [stderr]  --> src/pattern.rs:2:8
[INFO] [stderr]   |
[INFO] [stderr] 2 | struct Point {
[INFO] [stderr]   |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `pattern_run` is never used
[INFO] [stderr]  --> src/pattern.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn pattern_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `COUNTER` is never used
[INFO] [stderr]  --> src/unsafety.rs:5:12
[INFO] [stderr]   |
[INFO] [stderr] 5 | static mut COUNTER: i32 = 10; 
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unsafety_run` is never used
[INFO] [stderr]  --> src/unsafety.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn unsafety_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `abs` is never used
[INFO] [stderr]  --> src/unsafety.rs:2:8
[INFO] [stderr]   |
[INFO] [stderr] 2 |     fn abs(i: i32) -> i32;
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `functions_run` is never used
[INFO] [stderr]  --> src/functions.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn functions_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `invoke1` is never used
[INFO] [stderr]   --> src/macros.rs:20:4
[INFO] [stderr]    |
[INFO] [stderr] 20 | fn invoke1() {}
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Pancakes` is never constructed
[INFO] [stderr]   --> src/macros.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | struct Pancakes;
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `index` is never used
[INFO] [stderr]   --> src/macros.rs:26:8
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn index(input: String) -> String {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `macros_run` is never used
[INFO] [stderr]   --> src/macros.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn macros_run() {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_run` is never used
[INFO] [stderr]  --> src/read.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn read_run() {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `S` is never constructed
[INFO] [stderr]  --> src/borrow.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | struct S {
[INFO] [stderr]   |        ^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test` is never used
[INFO] [stderr]   --> src/borrow.rs:13:4
[INFO] [stderr]    |
[INFO] [stderr] 13 | fn test<'a>(arg: &'a S) -> &'a i32 {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test1` is never used
[INFO] [stderr]   --> src/borrow.rs:17:4
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn test1<'a, 'b>(arg: &'a S) -> &'b i32 where 'a:'b {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `joint` is never used
[INFO] [stderr]   --> src/borrow.rs:21:4
[INFO] [stderr]    |
[INFO] [stderr] 21 | fn joint() {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `seperate` is never used
[INFO] [stderr]   --> src/borrow.rs:27:4
[INFO] [stderr]    |
[INFO] [stderr] 27 | fn seperate() {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `r` is never used
[INFO] [stderr]   --> src/borrow.rs:34:4
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn r() -> &'static str {
[INFO] [stderr]    |    ^
[INFO] [stderr] 
[INFO] [stderr] warning: function `borrow_run` is never used
[INFO] [stderr]   --> src/borrow.rs:39:8
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub fn borrow_run() {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SharedValue` is never constructed
[INFO] [stderr]  --> src/smart_pointer.rs:2:8
[INFO] [stderr]   |
[INFO] [stderr] 2 | struct SharedValue {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `smart_pointer_run` is never used
[INFO] [stderr]  --> src/smart_pointer.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn smart_pointer_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `remove_spaces` is never used
[INFO] [stderr]  --> src/cow.rs:2:4
[INFO] [stderr]   |
[INFO] [stderr] 2 | fn remove_spaces<'a>(input: &'a str) -> Cow<'a, str> {
[INFO] [stderr]   |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cow_run` is never used
[INFO] [stderr]   --> src/cow.rs:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub fn cow_run() {
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Node` is never constructed
[INFO] [stderr]  --> src/mem_leak.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | struct Node {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `mem_leak_run` is never used
[INFO] [stderr]   --> src/mem_leak.rs:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub fn mem_leak_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `intrin_run` is never used
[INFO] [stderr]  --> src/intrin.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn intrin_run() {
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `T1` is never used
[INFO] [stderr]  --> src/variant.rs:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | trait T1 {
[INFO] [stderr]   |       ^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `T2` is never used
[INFO] [stderr]  --> src/variant.rs:5:7
[INFO] [stderr]   |
[INFO] [stderr] 5 | trait T2: T1 {
[INFO] [stderr]   |       ^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `T3` is never used
[INFO] [stderr]  --> src/variant.rs:9:7
[INFO] [stderr]   |
[INFO] [stderr] 9 | trait T3: T2 {
[INFO] [stderr]   |       ^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ST1` is never constructed
[INFO] [stderr]   --> src/variant.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | struct ST1 {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ST2` is never constructed
[INFO] [stderr]   --> src/variant.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | struct ST2 {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ST3` is never constructed
[INFO] [stderr]   --> src/variant.rs:40:8
[INFO] [stderr]    |
[INFO] [stderr] 40 | struct ST3 {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `echo1` is never used
[INFO] [stderr]   --> src/variant.rs:64:4
[INFO] [stderr]    |
[INFO] [stderr] 64 | fn echo1(x: & dyn T1) -> () {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `echo2` is never used
[INFO] [stderr]   --> src/variant.rs:68:4
[INFO] [stderr]    |
[INFO] [stderr] 68 | fn echo2(x: & dyn T2) -> () {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `echo3` is never used
[INFO] [stderr]   --> src/variant.rs:72:4
[INFO] [stderr]    |
[INFO] [stderr] 72 | fn echo3(x: & dyn T3) -> () {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `high` is never used
[INFO] [stderr]   --> src/variant.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn high<F>(f1: &F) where F: Fn(& dyn T2) -> () {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `variant_run` is never used
[INFO] [stderr]   --> src/variant.rs:80:8
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub fn variant_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ch3_run` is never used
[INFO] [stderr]  --> src/ch3.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn ch3_run() {
[INFO] [stderr]   |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `COUNT` is never used
[INFO] [stderr]  --> src/mutexs.rs:4:7
[INFO] [stderr]   |
[INFO] [stderr] 4 | const COUNT: u32 = 1000000;
[INFO] [stderr]   |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `mutexs_run` is never used
[INFO] [stderr]  --> src/mutexs.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn mutexs_run() {
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `barrier_run` is never used
[INFO] [stderr]  --> src/barrier.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn barrier_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `condvar_run` is never used
[INFO] [stderr]  --> src/condvar.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn condvar_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter1_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter1.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn chapter1_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter3_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter3.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn chapter3_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `echo` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter4.rs:1:4
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn echo(x: &String) -> &String {
[INFO] [stderr]   |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add1` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter4.rs:5:4
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn add1(t: (i32, i32)) -> i32 {
[INFO] [stderr]   |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add2` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter4.rs:9:4
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn add2((x, y): (i32, i32)) -> i32 {
[INFO] [stderr]   |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter4_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter4.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub fn chapter4_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter5_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter5.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn chapter5_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `func` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter5.rs:27:12
[INFO] [stderr]    |
[INFO] [stderr] 26 |     impl T {
[INFO] [stderr]    |     ------ associated function in this implementation
[INFO] [stderr] 27 |         fn func(this: &Self) -> () {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `show_arr` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter6.rs:1:4
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn show_arr(xs: [i32; 5]) {
[INFO] [stderr]   |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter6_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter6.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn chapter6_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `panic_with_i32` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter8.rs:1:4
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn panic_with_i32(x: i32) -> ! {
[INFO] [stderr]   |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter8_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter8.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn chapter8_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter9_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter9.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn chapter9_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `T` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter11.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | struct T {
[INFO] [stderr]   |        ^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter11_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter11.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn chapter11_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_less` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter12.rs:1:4
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn get_less<'a, 'b>(x: &'a i32, y: &'b i32) -> &'b i32
[INFO] [stderr]   |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_str` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter12.rs:7:4
[INFO] [stderr]   |
[INFO] [stderr] 7 | fn get_str(s: &String) -> &str {
[INFO] [stderr]   |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter12_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter12.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub fn chapter12_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter13_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter13.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn chapter13_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CellV1` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter15.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | struct CellV1<T> {
[INFO] [stderr]   |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `set`, and `get` are never used
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:8:8
[INFO] [stderr]    |
[INFO] [stderr]  7 | impl<T> CellV1<T> {
[INFO] [stderr]    | ----------------- associated items in this implementation
[INFO] [stderr]  8 |     fn new(v: T) -> CellV1<T> {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 11 |     fn set<'a, 'b>(&'a self, v: &'b T) 
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     fn get(&self) -> T where T: Copy {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter15_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter15.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub fn chapter15_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter16_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter16.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn chapter16_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter17_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter17.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn chapter17_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter18_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter18.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn chapter18_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter19_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter19.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn chapter19_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Zero` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter20.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | struct Zero {}
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NonZero` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter20.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | struct NonZero {
[INFO] [stderr]   |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `T` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter20.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 9 | struct T { dropped: bool }
[INFO] [stderr]   |        ^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl T {
[INFO] [stderr]    | ------ associated function in this implementation
[INFO] [stderr] 12 |     fn new() -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `R` is never constructed
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | struct R<'a> {
[INFO] [stderr]    |        ^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `set_ref` are never used
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:28:8
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl<'a> R<'a> {
[INFO] [stderr]    | -------------- associated items in this implementation
[INFO] [stderr] 28 |     fn new() -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 31 |     fn set_ref<'b :'a>(&mut self, ptr: &'b T) {
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter20_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter20.rs:44:8
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub fn chapter20_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compare_option` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter21.rs:3:4
[INFO] [stderr]   |
[INFO] [stderr] 3 | fn compare_option<T>(first: Option<T>, second: Option<T>) -> bool {
[INFO] [stderr]   |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter21.rs:11:4
[INFO] [stderr]    |
[INFO] [stderr] 11 | fn max<T>(a: T, b: T) -> T where T: PartialOrd {
[INFO] [stderr]    |    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Iter` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter21.rs:15:7
[INFO] [stderr]    |
[INFO] [stderr] 15 | trait Iter {
[INFO] [stderr]    |       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `use_iter` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter21.rs:24:4
[INFO] [stderr]    |
[INFO] [stderr] 24 | fn use_iter<ITEM, ITER>(mut iter: ITER)
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Graph` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter21.rs:33:7
[INFO] [stderr]    |
[INFO] [stderr] 33 | trait Graph {
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter21_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter21.rs:39:8
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub fn chapter21_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `make_adder` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter22.rs:1:4
[INFO] [stderr]   |
[INFO] [stderr] 1 | fn make_adder(x: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stderr]   |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `call_with_closure` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter22.rs:5:4
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn call_with_closure<F>(some_closure: F) -> i32
[INFO] [stderr]   |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `static_dispatch` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter22.rs:12:4
[INFO] [stderr]    |
[INFO] [stderr] 12 | fn static_dispatch<F>(closure: &F)
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `dynamic_dispatch` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter22.rs:20:4
[INFO] [stderr]    |
[INFO] [stderr] 20 | fn dynamic_dispatch(closure: &dyn Fn(i32) -> i32)
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter22_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter22.rs:26:8
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn chapter22_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Bird` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter23.rs:3:7
[INFO] [stderr]   |
[INFO] [stderr] 3 | trait Bird {
[INFO] [stderr]   |       ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Duck` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter23.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct Duck;
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Swan` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter23.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | struct Swan;
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:22:4
[INFO] [stderr]    |
[INFO] [stderr] 22 | fn test<T: Bird>(bird: T) {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Animal` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:26:7
[INFO] [stderr]    |
[INFO] [stderr] 26 | trait Animal<'a> {
[INFO] [stderr]    |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Flamingo` is never constructed
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:29:8
[INFO] [stderr]    |
[INFO] [stderr] 29 | struct Flamingo<'a> {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Crocdile` is never constructed
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | struct Crocdile<'a> {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `show_animal_name` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:47:4
[INFO] [stderr]    |
[INFO] [stderr] 47 | fn show_animal_name<'a, T: Animal<'a>>(animal: &'a T) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_traitobject` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:52:4
[INFO] [stderr]    |
[INFO] [stderr] 52 | fn print_traitobject(p: &dyn Bird) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Phone` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:69:7
[INFO] [stderr]    |
[INFO] [stderr] 69 | trait Phone {
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `iPhone` is never constructed
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:74:8
[INFO] [stderr]    |
[INFO] [stderr] 74 | struct iPhone<'a> {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `SomeTrait` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:88:7
[INFO] [stderr]    |
[INFO] [stderr] 88 | trait SomeTrait {
[INFO] [stderr]    |       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Bang` is never constructed
[INFO] [stderr]   --> src/head_first_rust/chapter23.rs:92:8
[INFO] [stderr]    |
[INFO] [stderr] 92 | struct Bang;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `multiply` is never used
[INFO] [stderr]    --> src/head_first_rust/chapter23.rs:100:4
[INFO] [stderr]     |
[INFO] [stderr] 100 | fn multiply(m: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stderr]     |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `combine_vecs_explicit_return_type` is never used
[INFO] [stderr]    --> src/head_first_rust/chapter23.rs:109:4
[INFO] [stderr]     |
[INFO] [stderr] 109 | fn combine_vecs_explicit_return_type(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `combine_vecs` is never used
[INFO] [stderr]    --> src/head_first_rust/chapter23.rs:118:4
[INFO] [stderr]     |
[INFO] [stderr] 118 | fn combine_vecs(
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `do_impl_return` is never used
[INFO] [stderr]    --> src/head_first_rust/chapter23.rs:125:4
[INFO] [stderr]     |
[INFO] [stderr] 125 | fn do_impl_return() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter23_run` is never used
[INFO] [stderr]    --> src/head_first_rust/chapter23.rs:137:8
[INFO] [stderr]     |
[INFO] [stderr] 137 | pub fn chapter23_run() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BPerson` is never constructed
[INFO] [stderr]  --> src/head_first_rust/chapter24.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | struct BPerson {
[INFO] [stderr]   |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl BPerson {
[INFO] [stderr]    | ------------ associated function in this implementation
[INFO] [stderr] 11 |     fn new(first: &str, last: &str) -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NumberGenerator` is never constructed
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 19 | struct NumberGenerator {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter24_run` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:34:8
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub fn chapter24_run() {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/head_first_rust/chapter24.rs:86:12
[INFO] [stderr]    |
[INFO] [stderr] 85 |     impl Person {
[INFO] [stderr]    |     ----------- associated function in this implementation
[INFO] [stderr] 86 |         fn new(first: &str, last: &str) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `chapter25_run` is never used
[INFO] [stderr]  --> src/head_first_rust/chapter25.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn chapter25_run() {}
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `overflow_run` is never used
[INFO] [stderr]  --> src/overflow.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn overflow_run() {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused comparison that must be used
[INFO] [stderr]   --> src/basic.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |         number % 2 == 0;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^ the comparison produces a value
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 44 |         let _ = number % 2 == 0;
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]  --> src/errors.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     io::stdin().read_line(&mut n);
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]   |
[INFO] [stderr] 8 |     let _ = io::stdin().read_line(&mut n);
[INFO] [stderr]   |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: variable `INITIAL` should have a snake case name
[INFO] [stderr]   --> src/lifetime.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let INITIAL = 10;
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case: `initial`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> src/unsafety.rs:45:39
[INFO] [stderr]    |
[INFO] [stderr] 45 |         println!("now COUNTER is {}", COUNTER);
[INFO] [stderr]    |                                       ^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stderr]   --> src/head_first_rust/chapter11.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 |     drop(v1);
[INFO] [stderr]    |     ^^^^^--^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          argument has type `i32`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]    |
[INFO] [stderr] 30 -     drop(v1);
[INFO] [stderr] 30 +     let _ = v1;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: casting references to a bigger memory layout than the backing allocation is undefined behavior, even if the reference is unused
[INFO] [stderr]   --> src/head_first_rust/chapter19.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let raw_mut = &mut y as *mut u32 as *mut i32 as *mut i64; // 这是安全的
[INFO] [stderr]    |                   ------------------------------------------
[INFO] [stderr]    |                   |    |
[INFO] [stderr]    |                   |    backing allocation comes from here
[INFO] [stderr]    |                   casting happened here
[INFO] [stderr] ...
[INFO] [stderr] 13 |         *raw_mut = -1; // 这是不安全的，必须在 unsafe 块中才能通过编译
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: casting from `u32` (4 bytes) to `i64` (8 bytes)
[INFO] [stderr]    = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-playground` (bin "rust-playground" test) generated 233 warnings (run `cargo fix --bin "rust-playground" --tests` to apply 14 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_playground-75c68081b4502ca5)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] test tests::larger_can_hold_smaller ... ok
[INFO] [stdout] test tests::this_test_will_pass ... ok
[INFO] [stdout] test tests::this_test_will_fail ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::this_test_will_fail stdout ----
[INFO] [stdout] I got the value 8
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::this_test_will_fail' (26) panicked at src/lib.rs:89:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 5
[INFO] [stdout]  right: 10
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x588f561ea172 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x588f561ea172 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x588f561ea172 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x588f561ea172 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x588f561fa29f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x588f561fa29f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x588f561b76e1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x588f561b76e1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x588f561c3742 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x588f561c828f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x588f561c8121 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x588f56188cee - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x588f56188cee - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x588f561c894f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x588f561c894f - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x588f561c87aa - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x588f561c3879 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x588f561abbbd - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x588f56201aa0 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x588f56201943 - core::panicking::assert_failed_inner::h448e1d534f4c3d4b
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x588f561d7a6c - core::panicking::assert_failed::h0d15de03de2e06c1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x588f56166c92 - rust_playground::tests::this_test_will_fail::he48015815b976334
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:89:9
[INFO] [stdout]   22:     0x588f56166cb7 - rust_playground::tests::this_test_will_fail::{{closure}}::h3153f264bdf97ce6
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:87:29
[INFO] [stdout]   23:     0x588f56167186 - core::ops::function::FnOnce::call_once::hfa377058e88cad63
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x588f56188aab - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x588f56188aab - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x588f5619e715 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x588f5619e715 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x588f5619e715 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   29:     0x588f5619e715 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   30:     0x588f5619e715 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x588f5619e715 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x588f5619e715 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x588f56174f04 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x588f56174f04 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   35:     0x588f561787ca - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x588f561787ca - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x588f561787ca - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   38:     0x588f561787ca - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   39:     0x588f561787ca - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x588f561787ca - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x588f561787ca - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x588f561be9df - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   43:     0x588f561be9df - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   44:     0x78adfe878aa4 - <unknown>
[INFO] [stdout]   45:     0x78adfe905a34 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::this_test_will_fail
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 3 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "16e6351e0fb9e2d436bececf43efcc4cc7dd4459812531d734418ea6c3206497", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "16e6351e0fb9e2d436bececf43efcc4cc7dd4459812531d734418ea6c3206497", kill_on_drop: false }`
[INFO] [stdout] 16e6351e0fb9e2d436bececf43efcc4cc7dd4459812531d734418ea6c3206497
