[INFO] cloning repository https://github.com/Delorus/rust_learning
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Delorus/rust_learning" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDelorus%2Frust_learning", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDelorus%2Frust_learning'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 85e9ac89dac5dca12156acf98619a6a7add91951
[INFO] checking Delorus/rust_learning against master#04ff05c9c0cfbca33115c5f1b8bb20a66a54b799 for pr-147834
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDelorus%2Frust_learning" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Delorus/rust_learning
[INFO] finished tweaking git repo https://github.com/Delorus/rust_learning
[INFO] tweaked toml for git repo https://github.com/Delorus/rust_learning written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Delorus/rust_learning on toolchain 04ff05c9c0cfbca33115c5f1b8bb20a66a54b799
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Delorus/rust_learning 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" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b65938d119ff1b10d5e91d5b74eeaa1ebc47b49563c6cd1e0c115799d88e00ec
[INFO] running `Command { std: "docker" "start" "-a" "b65938d119ff1b10d5e91d5b74eeaa1ebc47b49563c6cd1e0c115799d88e00ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b65938d119ff1b10d5e91d5b74eeaa1ebc47b49563c6cd1e0c115799d88e00ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b65938d119ff1b10d5e91d5b74eeaa1ebc47b49563c6cd1e0c115799d88e00ec", kill_on_drop: false }`
[INFO] [stdout] b65938d119ff1b10d5e91d5b74eeaa1ebc47b49563c6cd1e0c115799d88e00ec
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3f5db1c4490ea2199a23ea52842886e8fe9a988848bad07a26a55f0a8dc451f7
[INFO] running `Command { std: "docker" "start" "-a" "3f5db1c4490ea2199a23ea52842886e8fe9a988848bad07a26a55f0a8dc451f7", kill_on_drop: false }`
[INFO] [stderr]     Checking learning v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/bin/patterns.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 |         1...5 => println!("one through five"),
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/patterns.rs:121:45
[INFO] [stdout]     |
[INFO] [stdout] 121 |         Message::Hello { id: id_variable @ 3...7 } => {
[INFO] [stdout]     |                                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/patterns.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |         Message::Hello { id: 10...12 } => {
[INFO] [stdout]     |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/bin/multithreads.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_new_thread` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn create_new_thread() {
[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 `wait_new_thread` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn wait_new_thread() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_closure_with_new_thread` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn move_closure_with_new_thread() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn create_channel() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sending_multiple_values_in_channels` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn sending_multiple_values_in_channels() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutex` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn mutex() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/bin/multithreads.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     handle.join();
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[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] 25 |     let _ = handle.join();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/bin/multithreads.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handle.join();
[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] 35 |     let _ = handle.join();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Debug`
[INFO] [stdout]  --> src/bin/traits.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tweet` is never constructed
[INFO] [stdout]  --> src/bin/traits.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Tweet {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NewsArticle` is never constructed
[INFO] [stdout]   --> src/bin/traits.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct NewsArticle {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tweet_summ` is never used
[INFO] [stdout]   --> src/bin/traits.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn tweet_summ() {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pair` is never constructed
[INFO] [stdout]   --> src/bin/traits.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct Pair<T> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/bin/traits.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl<T> Pair<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 59 |     fn new(x: T, y: T) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `cmp_display` is never used
[INFO] [stdout]   --> src/bin/traits.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl<T: Display + PartialOrd> Pair<T> {
[INFO] [stdout]    | ------------------------------------- method in this implementation
[INFO] [stdout] 65 |     fn cmp_display(&self) {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Draw` is never used
[INFO] [stdout]   --> src/bin/traits.rs:74:7
[INFO] [stdout]    |
[INFO] [stdout] 74 | trait Draw {
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Screen` is never constructed
[INFO] [stdout]   --> src/bin/traits.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct Screen {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `run` is never used
[INFO] [stdout]   --> src/bin/traits.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 82 | impl Screen {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 83 |     fn run(&self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Button` is never constructed
[INFO] [stdout]   --> src/bin/traits.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | struct Button {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_trait_object` is never used
[INFO] [stdout]    --> src/bin/traits.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn use_trait_object() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_value` is never used
[INFO] [stdout]  --> src/bin/functions.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn return_value() -> i32 {
[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 `not_return_value` is never used
[INFO] [stdout]   --> src/bin/functions.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn not_return_value() -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `square` is never used
[INFO] [stdout]   --> src/bin/methods.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Rectangle {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 12 |     fn square(size: u32) -> 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: field `0` is never read
[INFO] [stdout]   --> src/bin/smart_ptr_cycle.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout]    |     ---- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field 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]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 11 -     Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout] 11 +     Cons((), RefCell<Rc<List>>),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_hold` is never used
[INFO] [stdout]   --> src/bin/methods.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 34 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/bin/smart_ptr_cycle.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `weak_ref_cycle` is never used
[INFO] [stdout]   --> src/bin/smart_ptr_cycle.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn weak_ref_cycle() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `or_match` is never used
[INFO] [stdout]  --> src/bin/patterns.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn or_match() {
[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 `range_match` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn range_match() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `destruct` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn destruct() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:51:6
[INFO] [stdout]    |
[INFO] [stdout] 51 | enum Message {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `destruct_enum` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn destruct_enum() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ignore_several_value` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn ignore_several_value() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_guard` is never used
[INFO] [stdout]    --> src/bin/patterns.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn match_guard() {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binding_in_match` is never used
[INFO] [stdout]    --> src/bin/patterns.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn binding_in_match() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z`
[INFO] [stdout]   --> src/bin/data_types.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let z = x as u32 + y;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_z`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cast_to_unsigned` is never used
[INFO] [stdout]  --> src/bin/data_types.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn cast_to_unsigned() {
[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 `representation_of_number` is never used
[INFO] [stdout]   --> src/bin/data_types.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn representation_of_number() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `implicit_cast` is never used
[INFO] [stdout]   --> src/bin/data_types.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn implicit_cast() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `std_f32` is never used
[INFO] [stdout]   --> src/bin/data_types.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn std_f32() {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logic_op` is never used
[INFO] [stdout]   --> src/bin/data_types.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn logic_op() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chars` is never used
[INFO] [stdout]   --> src/bin/data_types.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn chars() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tuples` is never used
[INFO] [stdout]   --> src/bin/data_types.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn tuples() {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Guess` is never constructed
[INFO] [stdout]   --> src/bin/tests.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct 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: associated function `new` is never used
[INFO] [stdout]   --> src/bin/tests.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl Guess {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 65 |     pub fn new(value: u32) -> Guess {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `square` is never used
[INFO] [stdout]   --> src/bin/methods.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Rectangle {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 12 |     fn square(size: u32) -> 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/bin/methods.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 34 |     fn can_hold(&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut z = &mut x;
[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: unused variable: `y`
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 |     let y = &x;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change_string` is never used
[INFO] [stdout]  --> src/bin/borrow_checker_ref_and_copy.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn change_string() {
[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 `move_string_borrowed` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn move_string_borrowed() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn move_ownership() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `takes_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn takes_ownership(s: String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn return_ownership() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_ownership_via_ref` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn return_ownership_via_ref() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ref_and_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn ref_and_ownership() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_pub_modules` is never used
[INFO] [stdout]   --> src/bin/modules_main.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn use_pub_modules() {
[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 `connect` is never used
[INFO] [stdout]  --> src/bin/modules/network/mod.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn connect() {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `use_module` is never used
[INFO] [stdout]  --> src/bin/modules/network/mod.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn use_module() {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect` is never used
[INFO] [stdout]   --> src/bin/modules/network/mod.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn connect() {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value` is never read
[INFO] [stdout]   --> src/bin/tests.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct Guess {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] 61 |     value: u32,
[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 `pointers` is never used
[INFO] [stdout]  --> src/bin/unsafe.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn pointers() {
[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 `unsafe_fn` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn unsafe_fn() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dangerous` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | unsafe fn dangerous() {}
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_abstraction` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn safe_abstraction() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_at_mut` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn split_at_mut(slice: &mut [i32], mid: usize) -> (&mut [i32], &mut [i32]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HELLO_WORLD` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | static HELLO_WORLD: &str = "Hello, world!";
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_static_var` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn read_static_var() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Foo` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:84:14
[INFO] [stdout]    |
[INFO] [stdout] 84 | unsafe trait Foo {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn abs(input: i32) -> i32;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/bin/unsafe.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |         println!("COUNTER: {}", 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: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/bin/multithreads.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_closures` is never used
[INFO] [stdout]  --> src/bin/adv_functions.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn return_closures() -> Box<dyn Fn(i32) -> i32> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/bin/smart_ponter.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let c = CustomSmartPointer { data: String::from("some data") };
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/bin/smart_ponter.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let b = Tree::Cons(3, a.clone());
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/state_pattern.rs:47:41
[INFO] [stdout]    |
[INFO] [stdout] 47 |         pub fn request_preview(self) -> PendingReviewPost {
[INFO] [stdout]    |                ---------------          ^^^^^^^^^^^^^^^^^ expected `PendingReviewPost`, found `()`
[INFO] [stdout]    |                |
[INFO] [stdout]    |                implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/bin/smart_ponter.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let c = Tree::Cons(4, a.clone());
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `box_pointer` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn box_pointer() {
[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 `create_new_thread` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn create_new_thread() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `List` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:16:6
[INFO] [stdout]    |
[INFO] [stdout] 16 | enum List {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wait_new_thread` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn wait_new_thread() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cons_list` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn cons_list() -> List {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_closure_with_new_thread` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn move_closure_with_new_thread() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn create_channel() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mp3` is never constructed
[INFO] [stdout]   --> src/bin/smart_ponter.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct Mp3 {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sending_multiple_values_in_channels` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn sending_multiple_values_in_channels() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deref_smart_pointers` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn deref_smart_pointers() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutex` is never used
[INFO] [stdout]   --> src/bin/multithreads.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn mutex() {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CustomSmartPointer` is never constructed
[INFO] [stdout]   --> src/bin/smart_ponter.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct CustomSmartPointer {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `drop_custom_smart_ptr` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn drop_custom_smart_ptr() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Tree` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:69:6
[INFO] [stdout]    |
[INFO] [stdout] 69 | enum Tree {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cons_tree` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn cons_tree() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `immutably_borrows` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn immutably_borrows(a: &i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mutably_borrows` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:92:4
[INFO] [stdout]    |
[INFO] [stdout] 92 | fn mutably_borrows(b: &mut i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `demo` is never used
[INFO] [stdout]   --> src/bin/smart_ponter.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn demo(r: &RefCell<i32>) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `runtime_borrow_with_refcell` is never used
[INFO] [stdout]    --> src/bin/smart_ponter.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn runtime_borrow_with_refcell() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]    --> src/bin/smart_ponter.rs:109:10
[INFO] [stdout]     |
[INFO] [stdout] 109 |     Cons(Rc<RefCell<i32>>, Rc<MTree>),
[INFO] [stdout]     |     ---- ^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MTree` 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] 109 -     Cons(Rc<RefCell<i32>>, Rc<MTree>),
[INFO] [stdout] 109 +     Cons((), ()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/bin/multithreads.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     handle.join();
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[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] 25 |     let _ = handle.join();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/bin/multithreads.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     handle.join();
[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] 35 |     let _ = handle.join();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `learning` (bin "state_pattern" test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: function `override_plus` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn override_plus() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Millimeters` is never constructed
[INFO] [stdout]   --> src/bin/adv_traits.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Millimeters(u32);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Meters` is never constructed
[INFO] [stdout]   --> src/bin/adv_traits.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Meters(u32);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Pilot` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:44:7
[INFO] [stdout]    |
[INFO] [stdout] 44 | trait Pilot {
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Wizard` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 48 | trait Wizard {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Human` is never constructed
[INFO] [stdout]   --> src/bin/adv_traits.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct Human;
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fly` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Human {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] 67 |     fn fly(&self) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `several_realisation` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn several_realisation() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Animal` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:79:7
[INFO] [stdout]    |
[INFO] [stdout] 79 | trait Animal {
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Dog` is never constructed
[INFO] [stdout]   --> src/bin/adv_traits.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct Dog;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `baby_name` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl Dog {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 86 |     fn baby_name() -> String {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `several_static_realisation` is never used
[INFO] [stdout]   --> src/bin/adv_traits.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn several_static_realisation() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wrapper` is never constructed
[INFO] [stdout]    --> src/bin/adv_traits.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | struct Wrapper(Vec<String>);
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `newtype` is never used
[INFO] [stdout]    --> src/bin/adv_traits.rs:142:4
[INFO] [stdout]     |
[INFO] [stdout] 142 | fn newtype() {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pointers` is never used
[INFO] [stdout]  --> src/bin/unsafe.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn pointers() {
[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 `unsafe_fn` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn unsafe_fn() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dangerous` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | unsafe fn dangerous() {}
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_abstraction` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn safe_abstraction() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_at_mut` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn split_at_mut(slice: &mut [i32], mid: usize) -> (&mut [i32], &mut [i32]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HELLO_WORLD` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | static HELLO_WORLD: &str = "Hello, world!";
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_static_var` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn read_static_var() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Foo` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:84:14
[INFO] [stdout]    |
[INFO] [stdout] 84 | unsafe trait Foo {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs` is never used
[INFO] [stdout]   --> src/bin/unsafe.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn abs(input: i32) -> i32;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/bin/unsafe.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |         println!("COUNTER: {}", 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: function `longest` is never used
[INFO] [stdout]  --> src/bin/lifetime.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImportantExcerpt` is never constructed
[INFO] [stdout]   --> src/bin/lifetime.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct ImportantExcerpt<'a> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lifetime_in_struct` is never used
[INFO] [stdout]   --> src/bin/lifetime.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn lifetime_in_struct() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_with_an_announcement` is never used
[INFO] [stdout]   --> src/bin/lifetime.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn longest_with_an_announcement<'a, T>(x: &'a str, y: &'a str, ann: T) -> &'a str
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/bin/patterns.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 |         1...5 => println!("one through five"),
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/patterns.rs:121:45
[INFO] [stdout]     |
[INFO] [stdout] 121 |         Message::Hello { id: id_variable @ 3...7 } => {
[INFO] [stdout]     |                                             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/patterns.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |         Message::Hello { id: 10...12 } => {
[INFO] [stdout]     |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `T` in this scope
[INFO] [stdout]   --> src/bin/adv_types.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 | type Result = result::Result<T, io::Error>;
[INFO] [stdout]    |                              ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `or_match` is never used
[INFO] [stdout]  --> src/bin/patterns.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn or_match() {
[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 `range_match` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn range_match() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `destruct` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn destruct() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:51:6
[INFO] [stdout]    |
[INFO] [stdout] 51 | enum Message {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `destruct_enum` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn destruct_enum() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ignore_several_value` is never used
[INFO] [stdout]   --> src/bin/patterns.rs:81:4
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn ignore_several_value() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `match_guard` is never used
[INFO] [stdout]    --> src/bin/patterns.rs:103:4
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn match_guard() {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binding_in_match` is never used
[INFO] [stdout]    --> src/bin/patterns.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn binding_in_match() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut z = &mut x;
[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: unused variable: `y`
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 |     let y = &x;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change_string` is never used
[INFO] [stdout]  --> src/bin/borrow_checker_ref_and_copy.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn change_string() {
[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 `move_string_borrowed` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn move_string_borrowed() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn move_ownership() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `takes_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn takes_ownership(s: String) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn return_ownership() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_ownership_via_ref` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn return_ownership_via_ref() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ref_and_ownership` is never used
[INFO] [stdout]   --> src/bin/borrow_checker_ref_and_copy.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn ref_and_ownership() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/bin/adv_types.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn never_return() -> ! {
[INFO] [stdout]    |    ------------      ^ expected `!`, found `()`
[INFO] [stdout]    |    |
[INFO] [stdout]    |    implicitly returns `()` as its body has no tail or `return` expression
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected type `!`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0412.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `learning` (bin "adv_types") due to 2 previous errors
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/collections.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut v = vec![1, 2, 3, 4, 5];
[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: function `create_vector` is never used
[INFO] [stdout]  --> src/bin/collections.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn create_vector() {
[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 `get_value` is never used
[INFO] [stdout]   --> src/bin/collections.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn get_value() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_hash_map` is never used
[INFO] [stdout]   --> src/bin/collections.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn create_hash_map() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_stats` is never used
[INFO] [stdout]   --> src/bin/collections.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn get_stats() {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `stats` is never used
[INFO] [stdout]   --> src/bin/collections.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn stats(v: &Vec<i32>) -> (f64, i32, i32) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ip4`
[INFO] [stdout]   --> src/bin/enums.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let ip4 = IpAddrKind::IPv4;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_ip4`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ip6`
[INFO] [stdout]   --> src/bin/enums.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let ip6 = IpAddrKind::IPv6;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_ip6`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loopback`
[INFO] [stdout]   --> src/bin/enums.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let loopback = IpAddr {
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loopback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IpAddrKind` is never used
[INFO] [stdout]  --> src/bin/enums.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | enum IpAddrKind {
[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 `create_enum` is never used
[INFO] [stdout]   --> src/bin/enums.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn create_enum() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IpAddr` is never constructed
[INFO] [stdout]   --> src/bin/enums.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct IpAddr {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_struct_with_enum` is never used
[INFO] [stdout]   --> src/bin/enums.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn create_struct_with_enum() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Message` is never used
[INFO] [stdout]   --> src/bin/enums.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | enum Message {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `call` is never used
[INFO] [stdout]   --> src/bin/enums.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl Message {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 37 |     fn call(&self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `call_message` is never used
[INFO] [stdout]   --> src/bin/enums.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn call_message() {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UsState` is never used
[INFO] [stdout]   --> src/bin/enums.rs:50:6
[INFO] [stdout]    |
[INFO] [stdout] 50 | enum UsState {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Coin` is never used
[INFO] [stdout]   --> src/bin/enums.rs:55:6
[INFO] [stdout]    |
[INFO] [stdout] 55 | enum Coin {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_in_cents` is never used
[INFO] [stdout]   --> src/bin/enums.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn value_in_cents(coin: Coin) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_plus_one` is never used
[INFO] [stdout]   --> src/bin/enums.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn get_plus_one() {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3f5db1c4490ea2199a23ea52842886e8fe9a988848bad07a26a55f0a8dc451f7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3f5db1c4490ea2199a23ea52842886e8fe9a988848bad07a26a55f0a8dc451f7", kill_on_drop: false }`
[INFO] [stdout] 3f5db1c4490ea2199a23ea52842886e8fe9a988848bad07a26a55f0a8dc451f7
