[INFO] cloning repository https://github.com/status-code-404/Leetcode_daily
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/status-code-404/Leetcode_daily" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstatus-code-404%2FLeetcode_daily", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstatus-code-404%2FLeetcode_daily'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b9009721b37fd152a402b473a64fbdd068d08962
[INFO] testing status-code-404/Leetcode_daily against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-7
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fstatus-code-404%2FLeetcode_daily" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/status-code-404/Leetcode_daily
[INFO] finished tweaking git repo https://github.com/status-code-404/Leetcode_daily
[INFO] tweaked toml for git repo https://github.com/status-code-404/Leetcode_daily written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/status-code-404/Leetcode_daily on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/status-code-404/Leetcode_daily 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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 787acc37789cf34141c646ba8e83057b093939227071168502cdac4d44e5164b
[INFO] running `Command { std: "docker" "start" "-a" "787acc37789cf34141c646ba8e83057b093939227071168502cdac4d44e5164b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "787acc37789cf34141c646ba8e83057b093939227071168502cdac4d44e5164b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "787acc37789cf34141c646ba8e83057b093939227071168502cdac4d44e5164b", kill_on_drop: false }`
[INFO] [stdout] 787acc37789cf34141c646ba8e83057b093939227071168502cdac4d44e5164b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc6b578e2692d9fc7bf7bb248da4e3a6bce02c54988f56d5886ba070665fd98a
[INFO] running `Command { std: "docker" "start" "-a" "fc6b578e2692d9fc7bf7bb248da4e3a6bce02c54988f56d5886ba070665fd98a", kill_on_drop: false }`
[INFO] [stderr]    Compiling Leetcode_daily v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]   --> src/answer_1031.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 |         while (index < all_len - first_len - second_len + 1){
[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] 20 -         while (index < all_len - first_len - second_len + 1){
[INFO] [stdout] 20 +         while index < all_len - first_len - second_len + 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]   --> src/answer_1031.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |             while (index2 < all_len - second_len + 1){
[INFO] [stdout]    |                   ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 23 -             while (index2 < all_len - second_len + 1){
[INFO] [stdout] 23 +             while index2 < all_len - second_len + 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![recursion_limit]`
[INFO] [stdout]  --> src/answer_1092.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[recursion_limit = "2000"]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: This attribute does not have an `!`, which means it is applied to this struct
[INFO] [stdout]  --> src/answer_1092.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct S(String);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/answer_1092.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |             return str;
[INFO] [stdout]    |             ---------- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 93 |         return String::new();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `max_` is never read
[INFO] [stdout]   --> src/answer_1626.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |                 let mut max_ = 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]   --> src/answer_1638.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut ss;
[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]   --> src/answer_1638.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut tt;
[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]   --> src/answer_1638.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 let mut left_str = &ss[left_start_index..left_end_index];
[INFO] [stdout]    |                     ----^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `left_end_index` is never read
[INFO] [stdout]   --> src/answer_1638.rs:36:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut left_end_index = left_start_index.clone() + 1;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/answer_1092.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut s1_string = s1.get_mut().get_string();
[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]   --> src/answer_1092.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut s2_string = s2.get_mut().get_string();
[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]   --> src/main.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut a = 0;
[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]   --> src/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut h = String::from("ZHello world");
[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]   --> src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut t = &h[1..2];
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]   --> src/main.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let q = h.clone();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solute` is never used
[INFO] [stdout]  --> src/answer_1574.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub fn solute(arr: Vec<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 `dfs` is never used
[INFO] [stdout]   --> src/answer_1626.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn dfs(mut people: Vec<[i32; 2]>, score_limit:i32) ->i32{
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer` is never used
[INFO] [stdout]   --> src/answer_1626.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn answer(scores: Vec<i32>, ages: Vec<i32>) -> i32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer` is never used
[INFO] [stdout]  --> src/answer_2395.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub fn answer(nums: Vec<i32>) -> bool{
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `string_diff1` is never used
[INFO] [stdout]  --> src/answer_1638.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn string_diff1(a:&str, b:&str) ->bool{
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer_easy` is never used
[INFO] [stdout]   --> src/answer_1638.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub fn answer_easy(s:String, t:String) -> i32{
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S` is never constructed
[INFO] [stdout]  --> src/answer_1092.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct S(String);
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `change` and `get_string` are never used
[INFO] [stdout]   --> src/answer_1092.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl S {
[INFO] [stdout]    | ------ methods in this implementation
[INFO] [stdout] 13 |     pub fn change(&mut self, a:String){
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn get_string(&mut self) -> String{
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/answer_1092.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn dfs(index_left: i32, index_right: i32) -> String{
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer` is never used
[INFO] [stdout]   --> src/answer_1092.rs:97:12
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn answer(a: String, b: String) -> String{
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_answer` is never used
[INFO] [stdout]  --> src/answer_1637.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn get_answer(points: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ListNode` is never constructed
[INFO] [stdout]  --> src/answer_1019.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct ListNode {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/answer_1019.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |   #[inline]
[INFO] [stdout] 9 |   fn new(val: i32) -> Self {
[INFO] [stdout]   |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_larger_nodes` is never used
[INFO] [stdout]   --> src/answer_1019.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 |   pub fn next_larger_nodes(head: Option<Box<ListNode>>) -> Vec<i32> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `camel_match` is never used
[INFO] [stdout]  --> src/answer_1023.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn camel_match(queries: Vec<String>, pattern: String) -> Vec<bool> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum` is never used
[INFO] [stdout]  --> src/answer_1031.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn sum<T:std::ops::Add<Output = T> + std::ops::Sub<Output=T> + Copy> (a:&[T]) -> T{
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sum_two_no_overlap` is never used
[INFO] [stdout]   --> src/answer_1031.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn max_sum_two_no_overlap(nums: Vec<i32>, first_len: i32, second_len: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer1031` is never used
[INFO] [stdout]   --> src/answer_1031.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn answer1031(nums: Vec<i32>, first_len: i32, second_len: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `judge_two_words` is never used
[INFO] [stdout]   --> src/answer_1048.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn judge_two_words(word1:String, word2:String) -> bool{
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dfs` is never used
[INFO] [stdout]   --> src/answer_1048.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub fn dfs(word:String, round:i32) -> i32{
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `answer1048` is never used
[INFO] [stdout]   --> src/answer_1048.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn answer1048(words: Vec<String>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate` is never used
[INFO] [stdout]    --> src/answer_1048.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn translate(a:Vec<&str>) -> Vec<String>{
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `Hashmap` should have an upper case name
[INFO] [stdout]   --> src/answer_1626.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |         static ref Hashmap: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 10 -         static ref Hashmap: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 10 +         static ref HASHMAP: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/answer_1638.rs:53:45
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     if string_diff1(left_str.clone(), &tt.clone()[right_index..right_index + str_size]){
[INFO] [stdout]    |                                             ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `Hashmap` should have an upper case name
[INFO] [stdout]   --> src/answer_1092.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     static ref Hashmap: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 23 -     static ref Hashmap: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 23 +     static ref HASHMAP: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `String1` should have an upper case name
[INFO] [stdout]   --> src/answer_1092.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     static ref String1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 24 -     static ref String1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout] 24 +     static ref STRING1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `String2` should have an upper case name
[INFO] [stdout]   --> src/answer_1092.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |     static ref String2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 25 -     static ref String2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout] 25 +     static ref STRING2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/answer_1092.rs:54:80
[INFO] [stdout]    |
[INFO] [stdout] 54 |             hash.get_mut().insert([index_left, index_right], String::from(value.clone()));
[INFO] [stdout]    |                                                                                ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/answer_1092.rs:62:80
[INFO] [stdout]    |
[INFO] [stdout] 62 |             hash.get_mut().insert([index_left, index_right], String::from(value.clone()));
[INFO] [stdout]    |                                                                                ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `WordLen` should have an upper case name
[INFO] [stdout]  --> src/answer_1048.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     static ref WordLen:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 8 -     static ref WordLen:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 8 +     static ref WORD_LEN:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `WordLink` should have an upper case name
[INFO] [stdout]  --> src/answer_1048.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 |     static ref WordLink: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 9 -     static ref WordLink: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 9 +     static ref WORD_LINK: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.56s
[INFO] running `Command { std: "docker" "inspect" "fc6b578e2692d9fc7bf7bb248da4e3a6bce02c54988f56d5886ba070665fd98a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc6b578e2692d9fc7bf7bb248da4e3a6bce02c54988f56d5886ba070665fd98a", kill_on_drop: false }`
[INFO] [stdout] fc6b578e2692d9fc7bf7bb248da4e3a6bce02c54988f56d5886ba070665fd98a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a9f5bddb658bd552532b546618dbd407a5d601c69298caf77255a58ac0942387
[INFO] running `Command { std: "docker" "start" "-a" "a9f5bddb658bd552532b546618dbd407a5d601c69298caf77255a58ac0942387", kill_on_drop: false }`
[INFO] [stderr]    Compiling Leetcode_daily v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]   --> src/answer_1031.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 |         while (index < all_len - first_len - second_len + 1){
[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] 20 -         while (index < all_len - first_len - second_len + 1){
[INFO] [stdout] 20 +         while index < all_len - first_len - second_len + 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]   --> src/answer_1031.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |             while (index2 < all_len - second_len + 1){
[INFO] [stdout]    |                   ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 23 -             while (index2 < all_len - second_len + 1){
[INFO] [stdout] 23 +             while index2 < all_len - second_len + 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![recursion_limit]`
[INFO] [stdout]  --> src/answer_1092.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[recursion_limit = "2000"]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: This attribute does not have an `!`, which means it is applied to this struct
[INFO] [stdout]  --> src/answer_1092.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct S(String);
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> src/answer_1092.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |             return str;
[INFO] [stdout]    |             ---------- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 93 |         return String::new();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `max_` is never read
[INFO] [stdout]   --> src/answer_1626.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |                 let mut max_ = 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]   --> src/answer_1638.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut ss;
[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]   --> src/answer_1638.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut tt;
[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]   --> src/answer_1638.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |                 let mut left_str = &ss[left_start_index..left_end_index];
[INFO] [stdout]    |                     ----^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `left_end_index` is never read
[INFO] [stdout]   --> src/answer_1638.rs:36:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut left_end_index = left_start_index.clone() + 1;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/answer_1092.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut s1_string = s1.get_mut().get_string();
[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]   --> src/answer_1092.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut s2_string = s2.get_mut().get_string();
[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]   --> src/answer_1023.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let mut a = Vec::from([false, true,false,false,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]   --> src/main.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut a = 0;
[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]   --> src/main.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut h = String::from("ZHello world");
[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]   --> src/main.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut t = &h[1..2];
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q`
[INFO] [stdout]   --> src/main.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let q = h.clone();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_answer` is never used
[INFO] [stdout]  --> src/answer_1637.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn get_answer(points: Vec<Vec<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: struct `ListNode` is never constructed
[INFO] [stdout]  --> src/answer_1019.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct ListNode {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/answer_1019.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |   #[inline]
[INFO] [stdout] 9 |   fn new(val: i32) -> Self {
[INFO] [stdout]   |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `next_larger_nodes` is never used
[INFO] [stdout]   --> src/answer_1019.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 |   pub fn next_larger_nodes(head: Option<Box<ListNode>>) -> Vec<i32> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `Hashmap` should have an upper case name
[INFO] [stdout]   --> src/answer_1626.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 |         static ref Hashmap: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 10 -         static ref Hashmap: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 10 +         static ref HASHMAP: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/answer_1638.rs:53:45
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     if string_diff1(left_str.clone(), &tt.clone()[right_index..right_index + str_size]){
[INFO] [stdout]    |                                             ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `Hashmap` should have an upper case name
[INFO] [stdout]   --> src/answer_1092.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 |     static ref Hashmap: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 23 -     static ref Hashmap: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 23 +     static ref HASHMAP: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `String1` should have an upper case name
[INFO] [stdout]   --> src/answer_1092.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     static ref String1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 24 -     static ref String1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout] 24 +     static ref STRING1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `String2` should have an upper case name
[INFO] [stdout]   --> src/answer_1092.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |     static ref String2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 25 -     static ref String2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout] 25 +     static ref STRING2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/answer_1092.rs:54:80
[INFO] [stdout]    |
[INFO] [stdout] 54 |             hash.get_mut().insert([index_left, index_right], String::from(value.clone()));
[INFO] [stdout]    |                                                                                ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/answer_1092.rs:62:80
[INFO] [stdout]    |
[INFO] [stdout] 62 |             hash.get_mut().insert([index_left, index_right], String::from(value.clone()));
[INFO] [stdout]    |                                                                                ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `WordLen` should have an upper case name
[INFO] [stdout]  --> src/answer_1048.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |     static ref WordLen:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 8 -     static ref WordLen:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 8 +     static ref WORD_LEN:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `WordLink` should have an upper case name
[INFO] [stdout]  --> src/answer_1048.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 |     static ref WordLink: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 9 -     static ref WordLink: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout] 9 +     static ref WORD_LINK: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.13s
[INFO] running `Command { std: "docker" "inspect" "a9f5bddb658bd552532b546618dbd407a5d601c69298caf77255a58ac0942387", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a9f5bddb658bd552532b546618dbd407a5d601c69298caf77255a58ac0942387", kill_on_drop: false }`
[INFO] [stdout] a9f5bddb658bd552532b546618dbd407a5d601c69298caf77255a58ac0942387
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c9c6c14727722890ae39c03f93b43c789d9411bb0a4d784b311864af06ad8f6a
[INFO] running `Command { std: "docker" "start" "-a" "c9c6c14727722890ae39c03f93b43c789d9411bb0a4d784b311864af06ad8f6a", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around `while` condition
[INFO] [stderr]   --> src/answer_1031.rs:20:15
[INFO] [stderr]    |
[INFO] [stderr] 20 |         while (index < all_len - first_len - second_len + 1){
[INFO] [stderr]    |               ^                                            ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 20 -         while (index < all_len - first_len - second_len + 1){
[INFO] [stderr] 20 +         while index < all_len - first_len - second_len + 1 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `while` condition
[INFO] [stderr]   --> src/answer_1031.rs:23:19
[INFO] [stderr]    |
[INFO] [stderr] 23 |             while (index2 < all_len - second_len + 1){
[INFO] [stderr]    |                   ^                                 ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 23 -             while (index2 < all_len - second_len + 1){
[INFO] [stderr] 23 +             while index2 < all_len - second_len + 1 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: crate-level attribute should be an inner attribute: add an exclamation mark: `#![recursion_limit]`
[INFO] [stderr]  --> src/answer_1092.rs:6:1
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[recursion_limit = "2000"]
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] note: This attribute does not have an `!`, which means it is applied to this struct
[INFO] [stderr]  --> src/answer_1092.rs:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | struct S(String);
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]   --> src/answer_1092.rs:93:9
[INFO] [stderr]    |
[INFO] [stderr] 77 |             return str;
[INFO] [stderr]    |             ---------- any code following this expression is unreachable
[INFO] [stderr] ...
[INFO] [stderr] 93 |         return String::new();
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `max_` is never read
[INFO] [stderr]   --> src/answer_1626.rs:30:32
[INFO] [stderr]    |
[INFO] [stderr] 30 |                 let mut max_ = 0;
[INFO] [stderr]    |                                ^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/answer_1638.rs:25:13
[INFO] [stderr]    |
[INFO] [stderr] 25 |         let mut ss;
[INFO] [stderr]    |             ----^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/answer_1638.rs:26:13
[INFO] [stderr]    |
[INFO] [stderr] 26 |         let mut tt;
[INFO] [stderr]    |             ----^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/answer_1638.rs:42:21
[INFO] [stderr]    |
[INFO] [stderr] 42 |                 let mut left_str = &ss[left_start_index..left_end_index];
[INFO] [stderr]    |                     ----^^^^^^^^
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `left_end_index` is never read
[INFO] [stderr]   --> src/answer_1638.rs:36:34
[INFO] [stderr]    |
[INFO] [stderr] 36 |         let mut left_end_index = left_start_index.clone() + 1;
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/answer_1092.rs:45:13
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let mut s1_string = s1.get_mut().get_string();
[INFO] [stderr]    |             ----^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/answer_1092.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |         let mut s2_string = s2.get_mut().get_string();
[INFO] [stderr]    |             ----^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/answer_1023.rs:55:9
[INFO] [stderr]    |
[INFO] [stderr] 55 |     let mut a = Vec::from([false, true,false,false,false]);
[INFO] [stderr]    |         ----^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:31:9
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let mut a = 0;
[INFO] [stderr]    |         ----^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |     let mut h = String::from("ZHello world");
[INFO] [stderr]    |         ----^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let mut t = &h[1..2];
[INFO] [stderr]    |         ----^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `q`
[INFO] [stderr]   --> src/main.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |     let q = h.clone();
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_q`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_answer` is never used
[INFO] [stderr]  --> src/answer_1637.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 |     pub fn get_answer(points: Vec<Vec<i32>>) -> i32 {
[INFO] [stderr]   |            ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ListNode` is never constructed
[INFO] [stderr]  --> src/answer_1019.rs:2:12
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub struct ListNode {
[INFO] [stderr]   |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]  --> src/answer_1019.rs:9:6
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl ListNode {
[INFO] [stderr]   | ------------- associated function in this implementation
[INFO] [stderr] 8 |   #[inline]
[INFO] [stderr] 9 |   fn new(val: i32) -> Self {
[INFO] [stderr]   |      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `next_larger_nodes` is never used
[INFO] [stderr]   --> src/answer_1019.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 |   pub fn next_larger_nodes(head: Option<Box<ListNode>>) -> Vec<i32> {
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `Hashmap` should have an upper case name
[INFO] [stderr]   --> src/answer_1626.rs:10:20
[INFO] [stderr]    |
[INFO] [stderr] 10 |         static ref Hashmap: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]    |                    ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 10 -         static ref Hashmap: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr] 10 +         static ref HASHMAP: Mutex<RefCell<HashMap<[i32;3],i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/answer_1638.rs:53:45
[INFO] [stderr]    |
[INFO] [stderr] 53 |                     if string_diff1(left_str.clone(), &tt.clone()[right_index..right_index + str_size]){
[INFO] [stderr]    |                                             ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `Hashmap` should have an upper case name
[INFO] [stderr]   --> src/answer_1092.rs:23:16
[INFO] [stderr]    |
[INFO] [stderr] 23 |     static ref Hashmap: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 23 -     static ref Hashmap: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr] 23 +     static ref HASHMAP: Mutex<RefCell<HashMap<[i32;2],String>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `String1` should have an upper case name
[INFO] [stderr]   --> src/answer_1092.rs:24:16
[INFO] [stderr]    |
[INFO] [stderr] 24 |     static ref String1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 24 -     static ref String1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stderr] 24 +     static ref STRING1:Mutex<RefCell<S>> =  Mutex::new(RefCell::new(S(String::new())));
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `String2` should have an upper case name
[INFO] [stderr]   --> src/answer_1092.rs:25:16
[INFO] [stderr]    |
[INFO] [stderr] 25 |     static ref String2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 25 -     static ref String2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stderr] 25 +     static ref STRING2:Mutex<RefCell<S>> = Mutex::new(RefCell::new(S(String::new())));
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/answer_1092.rs:54:80
[INFO] [stderr]    |
[INFO] [stderr] 54 |             hash.get_mut().insert([index_left, index_right], String::from(value.clone()));
[INFO] [stderr]    |                                                                                ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/answer_1092.rs:62:80
[INFO] [stderr]    |
[INFO] [stderr] 62 |             hash.get_mut().insert([index_left, index_right], String::from(value.clone()));
[INFO] [stderr]    |                                                                                ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `WordLen` should have an upper case name
[INFO] [stderr]  --> src/answer_1048.rs:8:16
[INFO] [stderr]   |
[INFO] [stderr] 8 |     static ref WordLen:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]   |                ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]   |
[INFO] [stderr] 8 -     static ref WordLen:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr] 8 +     static ref WORD_LEN:Mutex<RefCell<HashMap<usize, Vec<String>>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]   |
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `WordLink` should have an upper case name
[INFO] [stdout] 
[INFO] [stderr]  --> src/answer_1048.rs:9:16
[INFO] [stdout] running 8 tests
[INFO] [stderr]   |
[INFO] [stderr] 9 |     static ref WordLink: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]   |                ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]   |
[INFO] [stderr] 9 -     static ref WordLink: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr] 9 +     static ref WORD_LINK: Mutex<RefCell<HashMap<String, i32>>> = Mutex::new(RefCell::new(HashMap::new()));
[INFO] [stderr]   |
[INFO] [stderr] 
[INFO] [stderr] warning: `Leetcode_daily` (bin "Leetcode_daily" test) generated 29 warnings (run `cargo fix --bin "Leetcode_daily" -p Leetcode_daily --tests` to apply 21 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/Leetcode_daily-0472c402f7b9155f)
[INFO] [stdout] test answer_1023::test_1023 ... ok
[INFO] [stderr] 
[INFO] [stdout] test answer_1031::test ... ok
[INFO] [stderr] thread 'answer_1092::test' (21) has overflowed its stack
[INFO] [stdout] test answer_1574::test ... ok
[INFO] [stderr] fatal runtime error: stack overflow, aborting
[INFO] [stdout] test answer_1048::test_do ... ok
[INFO] [stderr] error: test failed, to rerun pass `--bin Leetcode_daily`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/Leetcode_daily-0472c402f7b9155f` (signal: 6, SIGABRT: process abort signal)
[INFO] running `Command { std: "docker" "inspect" "c9c6c14727722890ae39c03f93b43c789d9411bb0a4d784b311864af06ad8f6a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c9c6c14727722890ae39c03f93b43c789d9411bb0a4d784b311864af06ad8f6a", kill_on_drop: false }`
[INFO] [stdout] c9c6c14727722890ae39c03f93b43c789d9411bb0a4d784b311864af06ad8f6a
