[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 try#2b39fe756f52bc2825bf5b2bfc385cab922dae10 for pr-143011
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDelorus%2Frust_learning" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/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-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Delorus/rust_learning on toolchain 2b39fe756f52bc2825bf5b2bfc385cab922dae10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "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" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a743e7c14e95eccfc433a2c9af2775c7a83532598182f07563debbe3d3a8376b
[INFO] running `Command { std: "docker" "start" "-a" "a743e7c14e95eccfc433a2c9af2775c7a83532598182f07563debbe3d3a8376b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a743e7c14e95eccfc433a2c9af2775c7a83532598182f07563debbe3d3a8376b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a743e7c14e95eccfc433a2c9af2775c7a83532598182f07563debbe3d3a8376b", kill_on_drop: false }`
[INFO] [stdout] a743e7c14e95eccfc433a2c9af2775c7a83532598182f07563debbe3d3a8376b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b2cee3192b4704f59fe6944d7fa2e1cd29976132958d2691059c69a43668ecb6
[INFO] running `Command { std: "docker" "start" "-a" "b2cee3192b4704f59fe6944d7fa2e1cd29976132958d2691059c69a43668ecb6", kill_on_drop: false }`
[INFO] [stderr]     Checking learning v0.1.0 (/opt/rustwide/workdir)
[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)]` 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)]` 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: struct `User` is never constructed
[INFO] [stdout]  --> src/bin/structures.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct User {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_user` is never used
[INFO] [stdout]   --> src/bin/structures.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn create_user() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_user_from_another` is never used
[INFO] [stdout]   --> src/bin/structures.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn create_user_from_another() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]   --> src/bin/structures.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | struct Point(i32, i32);
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `named_tuple` is never used
[INFO] [stdout]   --> src/bin/structures.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn named_tuple() {
[INFO] [stdout]    |    ^^^^^^^^^^^
[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)]` on by default
[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)]` 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)]` 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: 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)]` 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)]` on by default
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` 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/nightly/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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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)]` 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] 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: 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)]` 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 `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)]` on by default
[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: 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)]` on by default
[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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[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)]` 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: 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)]` 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)]` 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/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: 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)]` on by default
[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: 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)]` 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 `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)]` 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)]` 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: 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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `learning` (bin "state_pattern") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[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] For more information about this error, try `rustc --explain E0308`.
[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] [stderr] error: could not compile `learning` (bin "state_pattern" test) due to 1 previous error
[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)]` on by default
[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] 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] 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)]` on by default
[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] [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)]` 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] [stderr] error: could not compile `learning` (bin "adv_types") due to 2 previous errors
[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)]` 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: 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)]` 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: 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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b2cee3192b4704f59fe6944d7fa2e1cd29976132958d2691059c69a43668ecb6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2cee3192b4704f59fe6944d7fa2e1cd29976132958d2691059c69a43668ecb6", kill_on_drop: false }`
[INFO] [stdout] b2cee3192b4704f59fe6944d7fa2e1cd29976132958d2691059c69a43668ecb6
