[INFO] cloning repository https://github.com/littlebluewhite/rust_algorithm
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/littlebluewhite/rust_algorithm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flittlebluewhite%2Frust_algorithm", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flittlebluewhite%2Frust_algorithm'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a7eeb685ca2d3caec645aac231a27ad2a4c9916d
[INFO] checking littlebluewhite/rust_algorithm/a7eeb685ca2d3caec645aac231a27ad2a4c9916d against master#568b11762723b001bfa693d0f21c5dad01d4e813 for pr-149518
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flittlebluewhite%2Frust_algorithm" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/littlebluewhite/rust_algorithm
[INFO] finished tweaking git repo https://github.com/littlebluewhite/rust_algorithm
[INFO] tweaked toml for git repo https://github.com/littlebluewhite/rust_algorithm written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/littlebluewhite/rust_algorithm on toolchain 568b11762723b001bfa693d0f21c5dad01d4e813
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+568b11762723b001bfa693d0f21c5dad01d4e813" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/littlebluewhite/rust_algorithm 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" "+568b11762723b001bfa693d0f21c5dad01d4e813" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded scraper v0.20.0
[INFO] [stderr]   Downloaded trpl v0.3.0
[INFO] [stderr]   Downloaded rustls v0.23.34
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+568b11762723b001bfa693d0f21c5dad01d4e813" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 15d75bc5ee94a9aa1ad37d6aa9f25ea7be2c623d9f79728bb107404a563ab4d5
[INFO] running `Command { std: "docker" "start" "-a" "15d75bc5ee94a9aa1ad37d6aa9f25ea7be2c623d9f79728bb107404a563ab4d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "15d75bc5ee94a9aa1ad37d6aa9f25ea7be2c623d9f79728bb107404a563ab4d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "15d75bc5ee94a9aa1ad37d6aa9f25ea7be2c623d9f79728bb107404a563ab4d5", kill_on_drop: false }`
[INFO] [stdout] 15d75bc5ee94a9aa1ad37d6aa9f25ea7be2c623d9f79728bb107404a563ab4d5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+568b11762723b001bfa693d0f21c5dad01d4e813" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 311beac42dc9e3b6391e121fd6289930c00ab497a6c5a95cd233a15d13f76c98
[INFO] running `Command { std: "docker" "start" "-a" "311beac42dc9e3b6391e121fd6289930c00ab497a6c5a95cd233a15d13f76c98", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling cc v1.2.44
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling rustls v0.23.34
[INFO] [stderr]     Checking phf_shared v0.10.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking webpki-roots v1.0.3
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]     Checking leetcode v0.1.0 (/opt/rustwide/workdir/leetcode)
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]  --> leetcode/src/question/q611.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for k in (2..nums.len()) {
[INFO] [stdout]   |              ^             ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout] 7 -     for k in (2..nums.len()) {
[INFO] [stdout] 7 +     for k in 2..nums.len()  {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> leetcode/src/question/q2435.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking servo_arc v0.3.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling syn v2.0.108
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q4.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_median_sorted_arrays2(mut a: Vec<i32>, mut b: Vec<i32>) -> f64 {
[INFO] [stdout]   |                               ----^
[INFO] [stdout]   |                               |
[INFO] [stdout]   |                               help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q4.rs:1:48
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_median_sorted_arrays2(mut a: Vec<i32>, mut b: Vec<i32>) -> f64 {
[INFO] [stdout]   |                                                ----^
[INFO] [stdout]   |                                                |
[INFO] [stdout]   |                                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> leetcode/src/question/q3005.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let a = elements_frequency.values();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `result` is never read
[INFO] [stdout]  --> leetcode/src/question/q3005.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut result = 0;
[INFO] [stdout]   |                      ^
[INFO] [stdout]   |
[INFO] [stdout]   = help: maybe it is overwritten before being read?
[INFO] [stdout]   = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q166.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let mut nagitive = false;
[INFO] [stdout]   |         ----^^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> leetcode/src/question/q166.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut nagitive = (n < 0) ^ (d < 0);
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nagitive`
[INFO] [stdout]  --> leetcode/src/question/q166.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let mut nagitive = false;
[INFO] [stdout]   |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nagitive`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q3100.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn max_bottles_drunk(mut num_bottles: i32, mut num_exchange: i32) -> i32 {
[INFO] [stdout]   |                          ----^^^^^^^^^^^
[INFO] [stdout]   |                          |
[INFO] [stdout]   |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> leetcode/src/question/q2300.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 |     for (i, spell) in spells.iter().enumerate() {
[INFO] [stdout]   |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking phf v0.10.1
[INFO] [stdout] warning: value assigned to `ans` is never read
[INFO] [stdout]  --> leetcode/src/question/q1523.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut ans = 0;
[INFO] [stdout]   |                   ^
[INFO] [stdout]   |
[INFO] [stdout]   = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]  --> leetcode/src/question/q3583.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let n = nums.len();
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/aq3573.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut long = vec![NEG; k+1];
[INFO] [stdout]   |         ----^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/aq3573.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut short = vec![NEG; k+1];
[INFO] [stdout]   |         ----^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_median_sorted_arrays2` is never used
[INFO] [stdout]  --> leetcode/src/question/q4.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_median_sorted_arrays2(mut a: Vec<i32>, mut b: Vec<i32>) -> f64 {
[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 `FoodEntry` is never constructed
[INFO] [stdout]  --> leetcode/src/question/q2353.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct FoodEntry {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FoodRatings` is never constructed
[INFO] [stdout]   --> leetcode/src/question/q2353.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct FoodRatings {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change_rating`, and `highest_rated` are never used
[INFO] [stdout]   --> leetcode/src/question/q2353.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl FoodRatings {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 32 |     fn new(foods: Vec<String>, cuisines: Vec<String>, ratings: Vec<i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     fn change_rating(&mut self, food: String, new_rating: i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn highest_rated(&mut self, cuisine: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TaskManager` is never constructed
[INFO] [stdout]   --> leetcode/src/question/q3408.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct TaskManager {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `edit`, `rmv`, and `exec_top` are never used
[INFO] [stdout]   --> leetcode/src/question/q3408.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl TaskManager {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |     fn new(tasks: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn add(&mut self, user_id: i32, task_id: i32, priority: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn edit(&mut self, task_id: i32, new_priority: i32) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     fn rmv(&mut self, task_id: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn exec_top(&mut self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `grid` is never read
[INFO] [stdout]  --> leetcode/src/question/q3484.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Spreadsheet {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] 4 |     grid: Vec<[i32; 26]>, // rows × 26 (A..Z)
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `set_cell`, `reset_cell`, `get_value`, `parse_cell`, and `eval_term` are never used
[INFO] [stdout]   --> leetcode/src/question/q3484.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl Spreadsheet {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 14 |     fn set_cell(&mut self, cell: String, value: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn reset_cell(&mut self, cell: String) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn get_value(&self, formula: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn parse_cell(s: &str) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn eval_term(&self, term: &str) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bank` is never constructed
[INFO] [stdout]  --> leetcode/src/question/q2043.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Bank {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `idx`, `transfer`, `deposit`, and `withdraw` are never used
[INFO] [stdout]   --> leetcode/src/question/q2043.rs:7:8
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl Bank {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout]  6 |     // 建立銀行（輸入為 0-indexed 的餘額陣列，但帳號是 1-indexed）
[INFO] [stdout]  7 |     fn new(balance: Vec<i64>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     fn idx(&self, account: i32) -> Option<usize> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn transfer(&mut self, account1: i32, account2: i32, money: i64) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn deposit(&mut self, account: i32, money: i64) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn withdraw(&mut self, account: i32, money: i64) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> leetcode/src/question/q3217.rs:12:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 11 |   #[inline]
[INFO] [stdout] 12 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]  --> leetcode/src/question/q611.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 |     for k in (2..nums.len()) {
[INFO] [stdout]   |              ^             ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]   |
[INFO] [stdout] 7 -     for k in (2..nums.len()) {
[INFO] [stdout] 7 +     for k in 2..nums.len()  {
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> leetcode/src/question/q2435.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q4.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_median_sorted_arrays2(mut a: Vec<i32>, mut b: Vec<i32>) -> f64 {
[INFO] [stdout]   |                               ----^
[INFO] [stdout]   |                               |
[INFO] [stdout]   |                               help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q4.rs:1:48
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_median_sorted_arrays2(mut a: Vec<i32>, mut b: Vec<i32>) -> f64 {
[INFO] [stdout]   |                                                ----^
[INFO] [stdout]   |                                                |
[INFO] [stdout]   |                                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:143:13
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> leetcode/src/question/q30.rs:224:13
[INFO] [stdout]     |
[INFO] [stdout] 224 |         let mut result = find_substring(s, words);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> leetcode/src/question/q3005.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let a = elements_frequency.values();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `result` is never read
[INFO] [stdout]  --> leetcode/src/question/q3005.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let mut result = 0;
[INFO] [stdout]   |                      ^
[INFO] [stdout]   |
[INFO] [stdout]   = help: maybe it is overwritten before being read?
[INFO] [stdout]   = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q166.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let mut nagitive = false;
[INFO] [stdout]   |         ----^^^^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> leetcode/src/question/q166.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut nagitive = (n < 0) ^ (d < 0);
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nagitive`
[INFO] [stdout]  --> leetcode/src/question/q166.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let mut nagitive = false;
[INFO] [stdout]   |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nagitive`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/q3100.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn max_bottles_drunk(mut num_bottles: i32, mut num_exchange: i32) -> i32 {
[INFO] [stdout]   |                          ----^^^^^^^^^^^
[INFO] [stdout]   |                          |
[INFO] [stdout]   |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]  --> leetcode/src/question/q2300.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 |     for (i, spell) in spells.iter().enumerate() {
[INFO] [stdout]   |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `ans` is never read
[INFO] [stdout]  --> leetcode/src/question/q1523.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut ans = 0;
[INFO] [stdout]   |                   ^
[INFO] [stdout]   |
[INFO] [stdout]   = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]  --> leetcode/src/question/q3583.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let n = nums.len();
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/aq3573.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let mut long = vec![NEG; k+1];
[INFO] [stdout]   |         ----^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> leetcode/src/question/aq3573.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut short = vec![NEG; k+1];
[INFO] [stdout]   |         ----^^^^^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_median_sorted_arrays2` is never used
[INFO] [stdout]  --> leetcode/src/question/q4.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn find_median_sorted_arrays2(mut a: Vec<i32>, mut b: Vec<i32>) -> f64 {
[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 `FoodEntry` is never constructed
[INFO] [stdout]  --> leetcode/src/question/q2353.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct FoodEntry {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FoodRatings` is never constructed
[INFO] [stdout]   --> leetcode/src/question/q2353.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct FoodRatings {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `change_rating`, and `highest_rated` are never used
[INFO] [stdout]   --> leetcode/src/question/q2353.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl FoodRatings {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 32 |     fn new(foods: Vec<String>, cuisines: Vec<String>, ratings: Vec<i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     fn change_rating(&mut self, food: String, new_rating: i32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn highest_rated(&mut self, cuisine: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TaskManager` is never constructed
[INFO] [stdout]   --> leetcode/src/question/q3408.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct TaskManager {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `edit`, `rmv`, and `exec_top` are never used
[INFO] [stdout]   --> leetcode/src/question/q3408.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl TaskManager {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |     fn new(tasks: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn add(&mut self, user_id: i32, task_id: i32, priority: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn edit(&mut self, task_id: i32, new_priority: i32) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     fn rmv(&mut self, task_id: i32) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn exec_top(&mut self) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `grid` is never read
[INFO] [stdout]  --> leetcode/src/question/q3484.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Spreadsheet {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] 4 |     grid: Vec<[i32; 26]>, // rows × 26 (A..Z)
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `set_cell`, `reset_cell`, `get_value`, `parse_cell`, and `eval_term` are never used
[INFO] [stdout]   --> leetcode/src/question/q3484.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl Spreadsheet {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 14 |     fn set_cell(&mut self, cell: String, value: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn reset_cell(&mut self, cell: String) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn get_value(&self, formula: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn parse_cell(s: &str) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     fn eval_term(&self, term: &str) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bank` is never constructed
[INFO] [stdout]  --> leetcode/src/question/q2043.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Bank {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `idx`, `transfer`, `deposit`, and `withdraw` are never used
[INFO] [stdout]   --> leetcode/src/question/q2043.rs:7:8
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl Bank {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout]  6 |     // 建立銀行（輸入為 0-indexed 的餘額陣列，但帳號是 1-indexed）
[INFO] [stdout]  7 |     fn new(balance: Vec<i64>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     fn idx(&self, account: i32) -> Option<usize> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn transfer(&mut self, account1: i32, account2: i32, money: i64) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn deposit(&mut self, account: i32, money: i64) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn withdraw(&mut self, account: i32, money: i64) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> leetcode/src/question/q3217.rs:12:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl ListNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 11 |   #[inline]
[INFO] [stdout] 12 |   fn new(val: i32) -> Self {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling selectors v0.25.0
[INFO] [stderr]    Compiling markup5ever v0.12.1
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]     Checking rustls-webpki v0.103.8
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling html5ever v0.27.0
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking cssparser v0.31.2
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking hyper-util v0.1.17
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking string_cache v0.8.9
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking reqwest v0.12.24
[INFO] [stderr]     Checking scraper v0.20.0
[INFO] [stderr]     Checking trpl v0.3.0
[INFO] [stderr]     Checking book v0.1.0 (/opt/rustwide/workdir/book)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> book/src/chapter/c13.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let mut list = [
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list`
[INFO] [stdout]   --> book/src/chapter/c13.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let mut list = [
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> book/src/chapter/c15.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let c = CustomSmartPointer {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> book/src/chapter/c15.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let d = CustomSmartPointer {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> book/src/chapter/c15.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let f = *value.borrow_mut();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `height` is never read
[INFO] [stdout]   --> book/src/chapter/c13.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct Rectangle {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 58 |     width: u32,
[INFO] [stdout] 59 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Rectangle` 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: fields `0` and `1` are never read
[INFO] [stdout]   --> book/src/chapter/c15.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 |     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `List` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 32 -     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stdout] 32 +     Cons((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `children` are never read
[INFO] [stdout]   --> book/src/chapter/c15.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 95 | struct Node {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 96 |     value: i32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 97 |     parent: RefCell<Weak<Node>>,
[INFO] [stdout] 98 |     children: RefCell<Vec<Rc<Node>>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> book/src/chapter/c13.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let mut list = [
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list`
[INFO] [stdout]   --> book/src/chapter/c13.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let mut list = [
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> book/src/chapter/c15.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let c = CustomSmartPointer {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> book/src/chapter/c15.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let d = CustomSmartPointer {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> book/src/chapter/c15.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let f = *value.borrow_mut();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `height` is never read
[INFO] [stdout]   --> book/src/chapter/c13.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct Rectangle {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 58 |     width: u32,
[INFO] [stdout] 59 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Rectangle` 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: struct `Shoe` is never constructed
[INFO] [stdout]   --> book/src/chapter/c13.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Shoe {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shoes_in_size` is never used
[INFO] [stdout]   --> book/src/chapter/c13.rs:89:4
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn shoes_in_size(shoes: Vec<Shoe>, shoe_size: u32) -> Vec<Shoe> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> book/src/chapter/c15.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 |     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `List` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 32 -     Cons(Rc<RefCell<i32>>, Rc<List>),
[INFO] [stdout] 32 +     Cons((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `children` are never read
[INFO] [stdout]   --> book/src/chapter/c15.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 95 | struct Node {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 96 |     value: i32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 97 |     parent: RefCell<Weak<Node>>,
[INFO] [stdout] 98 |     children: RefCell<Vec<Rc<Node>>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rust_algorithm v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.65s
[INFO] running `Command { std: "docker" "inspect" "311beac42dc9e3b6391e121fd6289930c00ab497a6c5a95cd233a15d13f76c98", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "311beac42dc9e3b6391e121fd6289930c00ab497a6c5a95cd233a15d13f76c98", kill_on_drop: false }`
[INFO] [stdout] 311beac42dc9e3b6391e121fd6289930c00ab497a6c5a95cd233a15d13f76c98
