[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#cf8a95590a1b768b7711f2631d5b5e3ead464de7 for pr-149389
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDelorus%2Frust_learning" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-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-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Delorus/rust_learning on toolchain cf8a95590a1b768b7711f2631d5b5e3ead464de7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "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" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 70d5ddcac90de6c22d9dc050eef379ad3e6c7380cf8d9f55c4476a27e5184964
[INFO] running `Command { std: "docker" "start" "-a" "70d5ddcac90de6c22d9dc050eef379ad3e6c7380cf8d9f55c4476a27e5184964", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "70d5ddcac90de6c22d9dc050eef379ad3e6c7380cf8d9f55c4476a27e5184964", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "70d5ddcac90de6c22d9dc050eef379ad3e6c7380cf8d9f55c4476a27e5184964", kill_on_drop: false }`
[INFO] [stdout] 70d5ddcac90de6c22d9dc050eef379ad3e6c7380cf8d9f55c4476a27e5184964
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+cf8a95590a1b768b7711f2631d5b5e3ead464de7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bb8da738d4b6afe031a828324f7987bab3d18339c79c6f31bb27b5269670ea74
[INFO] running `Command { std: "docker" "start" "-a" "bb8da738d4b6afe031a828324f7987bab3d18339c79c6f31bb27b5269670ea74", kill_on_drop: false }`
[INFO] [stderr]     Checking learning v0.1.0 (/opt/rustwide/workdir)
[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: `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] [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] 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] For more information about this error, try `rustc --explain E0308`.
[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: 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: 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] 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: 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] [stderr] error: could not compile `learning` (bin "state_pattern") due to 1 previous error
[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] [stderr] warning: build failed, waiting for other jobs to finish...
[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 `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: 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 `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: 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 `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: 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] 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: 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: 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: 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 `mutable_var` is never used
[INFO] [stdout]  --> src/bin/variables.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn mutable_var() {
[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 `constant` is never used
[INFO] [stdout]   --> src/bin/variables.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn constant() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `const_in_func` is never used
[INFO] [stdout]   --> src/bin/variables.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn const_in_func() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_POINTS` is never used
[INFO] [stdout]   --> src/bin/variables.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const MAX_POINTS: u32 = 200_000;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiple_vars` is never used
[INFO] [stdout]   --> src/bin/variables.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn multiple_vars() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[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_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: 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 `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 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: 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 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: 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: 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: 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 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: 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: 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" "bb8da738d4b6afe031a828324f7987bab3d18339c79c6f31bb27b5269670ea74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb8da738d4b6afe031a828324f7987bab3d18339c79c6f31bb27b5269670ea74", kill_on_drop: false }`
[INFO] [stdout] bb8da738d4b6afe031a828324f7987bab3d18339c79c6f31bb27b5269670ea74
