[INFO] cloning repository https://github.com/zcxGGmu/rustlings
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zcxGGmu/rustlings" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FzcxGGmu%2Frustlings", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FzcxGGmu%2Frustlings'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b6d2072632025a4243580232fcda4821e1631105
[INFO] checking zcxGGmu/rustlings against 5c543b0b8c73c7b72bc8284ced4fb22ead15734d for pr-160186
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FzcxGGmu%2Frustlings" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  29% (5487/18541)
Updating files:  30% (5563/18541)
Updating files:  31% (5748/18541)
Updating files:  31% (5790/18541)
Updating files:  32% (5934/18541)
Updating files:  33% (6119/18541)
Updating files:  34% (6304/18541)
Updating files:  35% (6490/18541)
Updating files:  36% (6675/18541)
Updating files:  37% (6861/18541)
Updating files:  37% (6996/18541)
Updating files:  38% (7046/18541)
Updating files:  38% (7177/18541)
Updating files:  39% (7231/18541)
Updating files:  39% (7290/18541)
Updating files:  40% (7417/18541)
Updating files:  40% (7529/18541)
Updating files:  41% (7602/18541)
Updating files:  42% (7788/18541)
Updating files:  42% (7901/18541)
Updating files:  43% (7973/18541)
Updating files:  44% (8159/18541)
Updating files:  45% (8344/18541)
Updating files:  46% (8529/18541)
Updating files:  47% (8715/18541)
Updating files:  48% (8900/18541)
Updating files:  49% (9086/18541)
Updating files:  50% (9271/18541)
Updating files:  51% (9456/18541)
Updating files:  52% (9642/18541)
Updating files:  53% (9827/18541)
Updating files:  54% (10013/18541)
Updating files:  55% (10198/18541)
Updating files:  56% (10383/18541)
Updating files:  57% (10569/18541)
Updating files:  58% (10754/18541)
Updating files:  58% (10784/18541)
Updating files:  59% (10940/18541)
Updating files:  60% (11125/18541)
Updating files:  61% (11311/18541)
Updating files:  62% (11496/18541)
Updating files:  63% (11681/18541)
Updating files:  64% (11867/18541)
Updating files:  65% (12052/18541)
Updating files:  66% (12238/18541)
Updating files:  67% (12423/18541)
Updating files:  68% (12608/18541)
Updating files:  69% (12794/18541)
Updating files:  70% (12979/18541)
Updating files:  71% (13165/18541)
Updating files:  72% (13350/18541)
Updating files:  73% (13535/18541)
Updating files:  74% (13721/18541)
Updating files:  75% (13906/18541)
Updating files:  76% (14092/18541)
Updating files:  77% (14277/18541)
Updating files:  78% (14462/18541)
Updating files:  79% (14648/18541)
Updating files:  80% (14833/18541)
Updating files:  80% (14976/18541)
Updating files:  81% (15019/18541)
Updating files:  82% (15204/18541)
Updating files:  83% (15390/18541)
Updating files:  84% (15575/18541)
Updating files:  85% (15760/18541)
Updating files:  86% (15946/18541)
Updating files:  87% (16131/18541)
Updating files:  88% (16317/18541)
Updating files:  89% (16502/18541)
Updating files:  90% (16687/18541)
Updating files:  91% (16873/18541)
Updating files:  92% (17058/18541)
Updating files:  93% (17244/18541)
Updating files:  94% (17429/18541)
Updating files:  95% (17614/18541)
Updating files:  96% (17800/18541)
Updating files:  97% (17985/18541)
Updating files:  98% (18171/18541)
Updating files:  99% (18356/18541)
Updating files:  99% (18424/18541)
Updating files: 100% (18541/18541)
Updating files: 100% (18541/18541), done.
[INFO] started tweaking git repo https://github.com/zcxGGmu/rustlings
[INFO] finished tweaking git repo https://github.com/zcxGGmu/rustlings
[INFO] tweaked toml for git repo https://github.com/zcxGGmu/rustlings written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/zcxGGmu/rustlings on toolchain 5c543b0b8c73c7b72bc8284ced4fb22ead15734d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/zcxGGmu/rustlings 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" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457
[INFO] running `Command { std: "docker" "start" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking exercises v0.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `foo_if_fizz` is never used
[INFO] [stdout]  --> exercises/03_if/if2.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn foo_if_fizz(fizzish: &str) -> &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 `Order` is never constructed
[INFO] [stdout]  --> solutions/07_structs/structs2.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Order {
[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_order_template` is never used
[INFO] [stdout]   --> solutions/07_structs/structs2.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn create_order_template() -> Order {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Div`
[INFO] [stdout]  --> exercises/18_iterators/iterators3.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Div;
[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 `Point` is never constructed
[INFO] [stdout]  --> solutions/08_enums/enums3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Point {
[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 `Message` is never used
[INFO] [stdout]  --> solutions/08_enums/enums3.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | enum Message {
[INFO] [stdout]   |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> solutions/08_enums/enums3.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct State {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `resize`, `move_position`, `echo`, `change_color`, `quit`, and `process` are never used
[INFO] [stdout]   --> solutions/08_enums/enums3.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl State {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] 24 |     fn resize(&mut self, width: u64, height: u64) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn move_position(&mut self, point: Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn echo(&mut self, s: String) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn change_color(&mut self, red: u8, green: u8, blue: u8) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn quit(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn process(&mut self, message: Message) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_price_of_apples` is never used
[INFO] [stdout]   --> exercises/quizzes/quiz1.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn calculate_price_of_apples(num: u32) -> 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 `fill_vec` is never used
[INFO] [stdout]  --> solutions/06_move_semantics/move_semantics2.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fill_vec(vec: Vec<i32>) -> Vec<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: enum `DivisionError` is never used
[INFO] [stdout]  --> exercises/18_iterators/iterators3.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum DivisionError {
[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 `divide` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators3.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn divide(a: i64, b: i64) -> Result<i64, DivisionError> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_with_list` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators3.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn result_with_list() -> Result<Vec<i64>, DivisionError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_of_results` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators3.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn list_of_results() -> Vec<Result<i64, DivisionError>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_even` is never used
[INFO] [stdout]  --> solutions/17_tests/tests1.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn is_even(n: i64) -> bool {
[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 `Progress` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators5.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Progress {
[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 `count_for` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators5.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn count_for(map: &HashMap<String, Progress>, value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_iterator` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators5.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn count_iterator(map: &HashMap<String, Progress>, value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_collection_for` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators5.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn count_collection_for(collection: &[HashMap<String, Progress>], value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_collection_iterator` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators5.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn count_collection_iterator(collection: &[HashMap<String, Progress>], value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ReportCard` is never constructed
[INFO] [stdout]   --> exercises/quizzes/quiz3.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct ReportCard<T> {
[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 `print` is never used
[INFO] [stdout]   --> exercises/quizzes/quiz3.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<T: std::fmt::Display> ReportCard<T> {
[INFO] [stdout]    | ---------------------------------------- method in this implementation
[INFO] [stdout] 23 |     fn print(&self) -> String {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_cost` is never used
[INFO] [stdout]   --> solutions/13_error_handling/errors2.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn total_cost(item_quantity: &str) -> Result<i32, ParseIntError> {
[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 `Rectangle` is never constructed
[INFO] [stdout]  --> solutions/17_tests/tests3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Rectangle {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> solutions/17_tests/tests3.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | impl Rectangle {
[INFO] [stdout]   | -------------- associated function in this implementation
[INFO] [stdout] 7 |     // Don't change this function.
[INFO] [stdout] 8 |     fn new(width: i32, height: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CreationError` is never used
[INFO] [stdout]  --> solutions/13_error_handling/errors4.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum CreationError {
[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 `PositiveNonzeroInteger` is never constructed
[INFO] [stdout]   --> solutions/13_error_handling/errors4.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct PositiveNonzeroInteger(u64);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> solutions/13_error_handling/errors4.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl PositiveNonzeroInteger {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(value: i64) -> Result<Self, CreationError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fruit_basket` is never used
[INFO] [stdout]  --> solutions/11_hashmaps/hashmaps1.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn fruit_basket() -> HashMap<String, 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: struct `ColorTupleStruct` is never constructed
[INFO] [stdout]   --> exercises/07_structs/structs1.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct ColorTupleStruct(u32, u32, 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 `maybe_icecream` is never used
[INFO] [stdout]  --> solutions/12_options/options1.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn maybe_icecream(hour_of_day: u16) -> Option<u16> {
[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 `details` is never used
[INFO] [stdout]   --> exercises/19_smart_pointers/rc1.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Planet {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 25 |     fn details(&self) {
[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 `weight_in_grams` is never read
[INFO] [stdout]  --> exercises/07_structs/structs3.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Package {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     weight_in_grams: u32,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Package` 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs_all` is never used
[INFO] [stdout]  --> exercises/19_smart_pointers/cow1.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn abs_all(input: &mut Cow<[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 `array_and_vec` is never used
[INFO] [stdout]  --> exercises/05_vecs/vecs1.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn array_and_vec() -> ([i32; 4], Vec<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: struct `Team` is never constructed
[INFO] [stdout]   --> solutions/11_hashmaps/hashmaps3.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Team {
[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 `build_scores_table` is never used
[INFO] [stdout]   --> solutions/11_hashmaps/hashmaps3.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn build_scores_table(results: &str) -> HashMap<&str, Team> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CreationError` is never used
[INFO] [stdout]   --> exercises/13_error_handling/errors6.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum CreationError {
[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 `ParsePosNonzeroError` is never used
[INFO] [stdout]   --> exercises/13_error_handling/errors6.rs:17:6
[INFO] [stdout]    |
[INFO] [stdout] 17 | enum ParsePosNonzeroError {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_creation` and `from_parseint` are never used
[INFO] [stdout]   --> exercises/13_error_handling/errors6.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl ParsePosNonzeroError {
[INFO] [stdout]    | ------------------------- associated functions in this implementation
[INFO] [stdout] 23 |     fn from_creation(err: CreationError) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn from_parseint(err: ParseIntError) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PositiveNonzeroInteger` is never constructed
[INFO] [stdout]   --> exercises/13_error_handling/errors6.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct PositiveNonzeroInteger(u64);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `parse` are never used
[INFO] [stdout]   --> exercises/13_error_handling/errors6.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl PositiveNonzeroInteger {
[INFO] [stdout]    | --------------------------- associated functions in this implementation
[INFO] [stdout] 37 |     fn new(value: i64) -> Result<Self, CreationError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn parse(s: &str) -> Result<Self, ParsePosNonzeroError> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bigger` is never used
[INFO] [stdout]  --> solutions/03_if/if1.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn bigger(a: i32, b: 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: function `placeholder` is never used
[INFO] [stdout]  --> exercises/09_strings/strings4.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn placeholder() {}
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SomeTrait` is never used
[INFO] [stdout]  --> solutions/15_traits/traits5.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait SomeTrait {
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OtherTrait` is never used
[INFO] [stdout]  --> solutions/15_traits/traits5.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | trait OtherTrait {
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SomeStruct` is never constructed
[INFO] [stdout]   --> solutions/15_traits/traits5.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct SomeStruct;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OtherStruct` is never constructed
[INFO] [stdout]   --> solutions/15_traits/traits5.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct OtherStruct;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `some_func` is never used
[INFO] [stdout]   --> solutions/15_traits/traits5.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn some_func(item: impl SomeTrait + OtherTrait) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `animal_habitat` is never used
[INFO] [stdout]  --> solutions/03_if/if3.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn animal_habitat(animal: &str) -> &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 `Order` is never constructed
[INFO] [stdout]  --> exercises/07_structs/structs2.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Order {
[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_order_template` is never used
[INFO] [stdout]   --> exercises/07_structs/structs2.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn create_order_template() -> Order {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capitalize_first` is never used
[INFO] [stdout]  --> solutions/18_iterators/iterators2.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn capitalize_first(input: &str) -> 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 `capitalize_words_vector` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators2.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn capitalize_words_vector(words: &[&str]) -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capitalize_words_string` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators2.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn capitalize_words_string(words: &[&str]) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_even` is never used
[INFO] [stdout]  --> exercises/17_tests/tests1.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn is_even(n: i64) -> bool {
[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 `Point` is never constructed
[INFO] [stdout]  --> exercises/08_enums/enums3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Point {
[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 `Message` is never used
[INFO] [stdout]  --> exercises/08_enums/enums3.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | enum Message {
[INFO] [stdout]   |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> exercises/08_enums/enums3.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct State {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `resize`, `move_position`, `echo`, `change_color`, `quit`, and `process` are never used
[INFO] [stdout]   --> exercises/08_enums/enums3.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl State {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] 38 |     fn resize(&mut self, width: u64, height: u64) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn move_position(&mut self, point: Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn echo(&mut self, s: String) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn change_color(&mut self, red: u8, green: u8, blue: u8) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn quit(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     fn process(&mut self, message: Message) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial_for` is never used
[INFO] [stdout]  --> solutions/18_iterators/iterators4.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn factorial_for(num: u64) -> u64 {
[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 `factorial_fold` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators4.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn factorial_fold(num: u64) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial_product` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators4.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn factorial_product(num: u64) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fill_vec` is never used
[INFO] [stdout]  --> exercises/06_move_semantics/move_semantics2.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fill_vec(vec: &Vec<i32>) -> Vec<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: enum `Command` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz2.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Command {
[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 `transformer` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz2.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub fn transformer(input: Vec<(String, Command)>) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transformer_iter` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz2.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn transformer_iter(input: Vec<(String, Command)>) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]  --> exercises/17_tests/tests3.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Rectangle {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> exercises/17_tests/tests3.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | impl Rectangle {
[INFO] [stdout]   | -------------- associated function in this implementation
[INFO] [stdout] 7 |     // Don't change this function.
[INFO] [stdout] 8 |     fn new(width: i32, height: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `byte_counter` is never used
[INFO] [stdout]  --> solutions/23_conversions/as_ref_mut.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn byte_counter<T: AsRef<str>>(arg: T) -> usize {
[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 `char_counter` is never used
[INFO] [stdout]   --> solutions/23_conversions/as_ref_mut.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn char_counter<T: AsRef<str>>(arg: T) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_sq` is never used
[INFO] [stdout]   --> solutions/23_conversions/as_ref_mut.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn num_sq<T: AsMut<u32>>(arg: &mut T) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_cost` is never used
[INFO] [stdout]   --> exercises/13_error_handling/errors2.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn total_cost(item_quantity: &str) -> Result<i32, ParseIntError> {
[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 `fruit_basket` is never used
[INFO] [stdout]  --> exercises/11_hashmaps/hashmaps1.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn fruit_basket() -> HashMap<String, 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 import: `os::linux::raw::stat`
[INFO] [stdout]  --> exercises/20_threads/threads2.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{os::linux::raw::stat, sync::Arc, thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::os::linux::raw::stat`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]  --> exercises/20_threads/threads2.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{os::linux::raw::stat, sync::Arc, thread, time::Duration};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CreationError` is never used
[INFO] [stdout]  --> exercises/13_error_handling/errors4.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum CreationError {
[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 `longest` is never used
[INFO] [stdout]  --> solutions/16_lifetimes/lifetimes1.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | 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 `PositiveNonzeroInteger` is never constructed
[INFO] [stdout]   --> exercises/13_error_handling/errors4.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct PositiveNonzeroInteger(u64);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> exercises/13_error_handling/errors4.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl PositiveNonzeroInteger {
[INFO] [stdout]    | --------------------------- associated function in this implementation
[INFO] [stdout] 13 |     fn new(value: i64) -> Result<Self, CreationError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `maybe_icecream` is never used
[INFO] [stdout]  --> exercises/12_options/options1.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn maybe_icecream(hour_of_day: u16) -> Option<u16> {
[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 `Team` is never constructed
[INFO] [stdout]   --> exercises/11_hashmaps/hashmaps3.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Team {
[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 `build_scores_table` is never used
[INFO] [stdout]   --> exercises/11_hashmaps/hashmaps3.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn build_scores_table(results: &str) -> HashMap<&str, Team> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Div`
[INFO] [stdout]  --> exercises/18_iterators/iterators3.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Div;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]  --> solutions/23_conversions/from_into.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Person {
[INFO] [stdout]   |        ------ fields in this struct
[INFO] [stdout] 8 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     age: u8,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Person` 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec_loop` is never used
[INFO] [stdout]  --> solutions/05_vecs/vecs2.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn vec_loop(input: &[i32]) -> Vec<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 `vec_map_example` is never used
[INFO] [stdout]   --> solutions/05_vecs/vecs2.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn vec_map_example(input: &[i32]) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec_map` is never used
[INFO] [stdout]   --> solutions/05_vecs/vecs2.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn vec_map(input: &[i32]) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trim_me` is never used
[INFO] [stdout]  --> solutions/09_strings/strings3.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn trim_me(input: &str) -> &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: function `compose_me` is never used
[INFO] [stdout]  --> solutions/09_strings/strings3.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn compose_me(input: &str) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `replace_me` is never used
[INFO] [stdout]   --> solutions/09_strings/strings3.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn replace_me(input: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `animal_habitat` is never used
[INFO] [stdout]  --> exercises/03_if/if3.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn animal_habitat(animal: &str) -> &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 `ColorRegularStruct` is never constructed
[INFO] [stdout]  --> solutions/07_structs/structs1.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct ColorRegularStruct {
[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 `ColorTupleStruct` is never constructed
[INFO] [stdout]  --> solutions/07_structs/structs1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct ColorTupleStruct(u8, u8, u8);
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UnitStruct` is never constructed
[INFO] [stdout]   --> solutions/07_structs/structs1.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct UnitStruct;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SomeTrait` is never used
[INFO] [stdout]  --> exercises/15_traits/traits5.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait SomeTrait {
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `OtherTrait` is never used
[INFO] [stdout]  --> exercises/15_traits/traits5.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | trait OtherTrait {
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SomeStruct` is never constructed
[INFO] [stdout]   --> exercises/15_traits/traits5.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct SomeStruct;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OtherStruct` is never constructed
[INFO] [stdout]   --> exercises/15_traits/traits5.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct OtherStruct;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `some_func` is never used
[INFO] [stdout]   --> exercises/15_traits/traits5.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn some_func(item: impl SomeTrait + OtherTrait) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capitalize_first` is never used
[INFO] [stdout]  --> exercises/18_iterators/iterators2.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn capitalize_first(input: &str) -> 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 `capitalize_words_vector` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators2.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn capitalize_words_vector(words: &[&str]) -> Vec<String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `capitalize_words_string` is never used
[INFO] [stdout]   --> exercises/18_iterators/iterators2.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn capitalize_words_string(words: &[&str]) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Package` is never constructed
[INFO] [stdout]  --> solutions/07_structs/structs3.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Package {
[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 items `new`, `is_international`, and `get_fees` are never used
[INFO] [stdout]   --> solutions/07_structs/structs3.rs:9:8
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Package {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout]  9 |     fn new(sender_country: String, recipient_country: String, weight_in_grams: u32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn is_international(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn get_fees(&self, cents_per_gram: u32) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Command` is never used
[INFO] [stdout]   --> exercises/quizzes/quiz2.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum Command {
[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 `transformer` is never used
[INFO] [stdout]   --> exercises/quizzes/quiz2.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn transformer(input: Vec<(String, Command)>) -> Vec<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial` is never used
[INFO] [stdout]  --> exercises/18_iterators/iterators4.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn factorial(num: u64) -> u64 {
[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 `fill_vec` is never used
[INFO] [stdout]  --> solutions/06_move_semantics/move_semantics1.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fill_vec(vec: Vec<i32>) -> Vec<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 `generate_nametag_text` is never used
[INFO] [stdout]  --> solutions/13_error_handling/errors1.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn generate_nametag_text(name: String) -> Result<String, 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 `power_of_2` is never used
[INFO] [stdout]  --> solutions/17_tests/tests2.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn power_of_2(n: u8) -> u64 {
[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 `byte_counter` is never used
[INFO] [stdout]  --> exercises/23_conversions/as_ref_mut.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn byte_counter<T: AsRef<str>>(arg: T) -> usize {
[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 `char_counter` is never used
[INFO] [stdout]   --> exercises/23_conversions/as_ref_mut.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn char_counter<T: AsRef<str>>(arg: T) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_sq` is never used
[INFO] [stdout]   --> exercises/23_conversions/as_ref_mut.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn num_sq<T: AsMut<u32>>(arg: &mut T) {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]  --> exercises/16_lifetimes/lifetimes1.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 `Wrapper` is never constructed
[INFO] [stdout]  --> solutions/14_generics/generics2.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Wrapper<T> {
[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]  --> solutions/14_generics/generics2.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | impl<T> Wrapper<T> {
[INFO] [stdout]   | ------------------ associated function in this implementation
[INFO] [stdout] 6 |     fn new(value: T) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `placeholder` is never used
[INFO] [stdout]  --> exercises/09_strings/strings4.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn placeholder() {}
[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 `fill_vec` is never used
[INFO] [stdout]  --> solutions/06_move_semantics/move_semantics3.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn fill_vec(mut vec: Vec<i32>) -> Vec<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: enum `Fruit` is never used
[INFO] [stdout]   --> solutions/11_hashmaps/hashmaps2.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Fruit {
[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 `fruit_basket` is never used
[INFO] [stdout]   --> solutions/11_hashmaps/hashmaps2.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn fruit_basket(basket: &mut HashMap<Fruit, u32>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `resize`, `move_position`, `echo`, `change_color`, and `quit` are never used
[INFO] [stdout]   --> exercises/08_enums/enums3.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl State {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] 38 |     fn resize(&mut self, width: u64, height: u64) {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn move_position(&mut self, point: Point) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn echo(&mut self, s: String) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn change_color(&mut self, red: u8, green: u8, blue: u8) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn quit(&mut self) {
[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 `Queue` is never constructed
[INFO] [stdout]  --> solutions/20_threads/threads3.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Queue {
[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]   --> solutions/20_threads/threads3.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Queue {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 10 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_tx` is never used
[INFO] [stdout]   --> solutions/20_threads/threads3.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn send_tx(q: Queue, tx: mpsc::Sender<u32>) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trim_me` is never used
[INFO] [stdout]  --> exercises/09_strings/strings3.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn trim_me(input: &str) -> &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: function `compose_me` is never used
[INFO] [stdout]  --> exercises/09_strings/strings3.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn compose_me(input: &str) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `replace_me` is never used
[INFO] [stdout]   --> exercises/09_strings/strings3.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn replace_me(input: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AppendBar` is never used
[INFO] [stdout]  --> solutions/15_traits/traits2.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait AppendBar {
[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 `vec_loop` is never used
[INFO] [stdout]  --> exercises/05_vecs/vecs2.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn vec_loop(input: &[i32]) -> Vec<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 `vec_map_example` is never used
[INFO] [stdout]   --> exercises/05_vecs/vecs2.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn vec_map_example(input: &[i32]) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec_map` is never used
[INFO] [stdout]   --> exercises/05_vecs/vecs2.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn vec_map(input: &[i32]) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Licensed` is never used
[INFO] [stdout]  --> solutions/15_traits/traits4.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Licensed {
[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 `SomeSoftware` is never constructed
[INFO] [stdout]  --> solutions/15_traits/traits4.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct SomeSoftware;
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OtherSoftware` is never constructed
[INFO] [stdout]  --> solutions/15_traits/traits4.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct OtherSoftware;
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_license_types` is never used
[INFO] [stdout]   --> solutions/15_traits/traits4.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn compare_license_types(software1: impl Licensed, software2: impl Licensed) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColorRegularStruct` is never constructed
[INFO] [stdout]  --> exercises/07_structs/structs1.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct ColorRegularStruct {
[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 `ColorTupleStruct` is never constructed
[INFO] [stdout]   --> exercises/07_structs/structs1.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct ColorTupleStruct(u32, u32, u32);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UnitStruct` is never constructed
[INFO] [stdout]   --> exercises/07_structs/structs1.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct UnitStruct;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo_if_fizz` is never used
[INFO] [stdout]  --> solutions/03_if/if2.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn foo_if_fizz(fizzish: &str) -> &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: fields `name` and `age` are never read
[INFO] [stdout]  --> exercises/23_conversions/from_into.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Person {
[INFO] [stdout]   |        ------ fields in this struct
[INFO] [stdout] 8 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     age: u8,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Person` 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `os::linux::raw::stat`
[INFO] [stdout]  --> exercises/20_threads/threads2.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{os::linux::raw::stat, sync::Arc, thread, time::Duration};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::os::linux::raw::stat`: these type aliases are no longer supported by the standard library, the `libc` crate on crates.io should be used instead for the correct definitions
[INFO] [stdout]  --> exercises/20_threads/threads2.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{os::linux::raw::stat, sync::Arc, thread, time::Duration};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Package` is never constructed
[INFO] [stdout]  --> exercises/07_structs/structs3.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Package {
[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 items `new`, `is_international`, and `get_fees` are never used
[INFO] [stdout]   --> exercises/07_structs/structs3.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Package {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 12 |     fn new(sender_country: String, recipient_country: String, weight_in_grams: u32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn is_international(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn get_fees(&self, cents_per_gram: u32) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DivisionError` is never used
[INFO] [stdout]  --> solutions/18_iterators/iterators3.rs:2:6
[INFO] [stdout]   |
[INFO] [stdout] 2 | enum DivisionError {
[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 `divide` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators3.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn divide(a: i64, b: i64) -> Result<i64, DivisionError> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `result_with_list` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators3.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn result_with_list() -> Result<Vec<i64>, DivisionError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `list_of_results` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators3.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn list_of_results() -> Vec<Result<i64, DivisionError>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fill_vec` is never used
[INFO] [stdout]  --> exercises/06_move_semantics/move_semantics1.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn fill_vec(vec: Vec<i32>) -> Vec<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 `calculate_price_of_apples` is never used
[INFO] [stdout]  --> solutions/quizzes/quiz1.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn calculate_price_of_apples(n_apples: u64) -> u64 {
[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 `power_of_2` is never used
[INFO] [stdout]  --> exercises/17_tests/tests2.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn power_of_2(n: u8) -> u64 {
[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 `generate_nametag_text` is never used
[INFO] [stdout]  --> exercises/13_error_handling/errors1.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn generate_nametag_text(name: String) -> Result<String, 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 `fill_vec` is never used
[INFO] [stdout]  --> exercises/06_move_semantics/move_semantics3.rs:2:4
[INFO] [stdout]   |
[INFO] [stdout] 2 | fn fill_vec(mut vec: Vec<i32>) -> Vec<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: struct `ReportCard` is never constructed
[INFO] [stdout]   --> solutions/quizzes/quiz3.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct ReportCard<T> {
[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 `print` is never used
[INFO] [stdout]   --> solutions/quizzes/quiz3.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<T: Display> ReportCard<T> {
[INFO] [stdout]    | ------------------------------ method in this implementation
[INFO] [stdout] 23 |     //  ^^^^^^^ require that `T` implements `Display`.
[INFO] [stdout] 24 |     fn print(&self) -> String {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wrapper` is never constructed
[INFO] [stdout]  --> exercises/14_generics/generics2.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Wrapper<T> {
[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]  --> exercises/14_generics/generics2.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl<T> Wrapper<T> {
[INFO] [stdout]   | ------------------ associated function in this implementation
[INFO] [stdout] 9 |     fn new(value: T) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Progress` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators5.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Progress {
[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 `count_for` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators5.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn count_for(map: &HashMap<String, Progress>, value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_iterator` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators5.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn count_iterator(map: &HashMap<String, Progress>, value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_collection_for` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators5.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn count_collection_for(collection: &[HashMap<String, Progress>], value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_collection_iterator` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators5.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn count_collection_iterator(collection: &[HashMap<String, Progress>], value: Progress) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_collection_iterator_flat` is never used
[INFO] [stdout]   --> solutions/18_iterators/iterators5.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn count_collection_iterator_flat(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Fruit` is never used
[INFO] [stdout]   --> exercises/11_hashmaps/hashmaps2.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Fruit {
[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 `fruit_basket` is never used
[INFO] [stdout]   --> exercises/11_hashmaps/hashmaps2.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn fruit_basket(basket: &mut HashMap<Fruit, u32>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `details` is never used
[INFO] [stdout]   --> solutions/19_smart_pointers/rc1.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Planet {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 25 |     fn details(&self) {
[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 `Queue` is never constructed
[INFO] [stdout]  --> exercises/20_threads/threads3.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Queue {
[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]   --> exercises/20_threads/threads3.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Queue {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 11 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_tx` is never used
[INFO] [stdout]   --> exercises/20_threads/threads3.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn send_tx(q: Queue, tx: mpsc::Sender<u32>) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `abs_all` is never used
[INFO] [stdout]  --> solutions/19_smart_pointers/cow1.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn abs_all(input: &mut Cow<[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 `bigger` is never used
[INFO] [stdout]  --> exercises/03_if/if1.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn bigger(a: i32, b: 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: function `array_and_vec` is never used
[INFO] [stdout]  --> solutions/05_vecs/vecs1.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn array_and_vec() -> ([i32; 4], Vec<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: trait `AppendBar` is never used
[INFO] [stdout]  --> exercises/15_traits/traits2.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait AppendBar {
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Licensed` is never used
[INFO] [stdout]  --> exercises/15_traits/traits4.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Licensed {
[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 `SomeSoftware` is never constructed
[INFO] [stdout]  --> exercises/15_traits/traits4.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct SomeSoftware;
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OtherSoftware` is never constructed
[INFO] [stdout]  --> exercises/15_traits/traits4.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct OtherSoftware;
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_license_types` is never used
[INFO] [stdout]   --> exercises/15_traits/traits4.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn compare_license_types(software1: impl Licensed, software2: impl Licensed) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CreationError` is never used
[INFO] [stdout]   --> solutions/13_error_handling/errors6.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum CreationError {
[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 `ParsePosNonzeroError` is never used
[INFO] [stdout]   --> solutions/13_error_handling/errors6.rs:17:6
[INFO] [stdout]    |
[INFO] [stdout] 17 | enum ParsePosNonzeroError {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_creation` and `from_parseint` are never used
[INFO] [stdout]   --> solutions/13_error_handling/errors6.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl ParsePosNonzeroError {
[INFO] [stdout]    | ------------------------- associated functions in this implementation
[INFO] [stdout] 23 |     fn from_creation(err: CreationError) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn from_parseint(err: ParseIntError) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PositiveNonzeroInteger` is never constructed
[INFO] [stdout]   --> solutions/13_error_handling/errors6.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct PositiveNonzeroInteger(u64);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `parse` are never used
[INFO] [stdout]   --> solutions/13_error_handling/errors6.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl PositiveNonzeroInteger {
[INFO] [stdout]    | --------------------------- associated functions in this implementation
[INFO] [stdout] 36 |     fn new(value: i64) -> Result<Self, CreationError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn parse(s: &str) -> Result<Self, ParsePosNonzeroError> {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.54s
[INFO] running `Command { std: "docker" "inspect" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457", kill_on_drop: false }`
[INFO] [stdout] 67ccc3f2e8eb95ddafa002a98cfb2a552389f058978f80aa8dd86437d152f457
