[INFO] cloning repository https://github.com/TangMoonDrift/algorithm-in-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TangMoonDrift/algorithm-in-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTangMoonDrift%2Falgorithm-in-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTangMoonDrift%2Falgorithm-in-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ab34c09f957b4d6113e8b340a4fe6d0f18c92e72
[INFO] testing TangMoonDrift/algorithm-in-rust against 1.83.0 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTangMoonDrift%2Falgorithm-in-rust" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/TangMoonDrift/algorithm-in-rust on toolchain 1.83.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.83.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/TangMoonDrift/algorithm-in-rust
[INFO] finished tweaking git repo https://github.com/TangMoonDrift/algorithm-in-rust
[INFO] tweaked toml for git repo https://github.com/TangMoonDrift/algorithm-in-rust written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/TangMoonDrift/algorithm-in-rust 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" "+1.83.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e7bade9ae45737c1d00480ed2d3fc21a9f4fecbd0a0819b95f0eaa9ca34c81d7
[INFO] running `Command { std: "docker" "start" "-a" "e7bade9ae45737c1d00480ed2d3fc21a9f4fecbd0a0819b95f0eaa9ca34c81d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e7bade9ae45737c1d00480ed2d3fc21a9f4fecbd0a0819b95f0eaa9ca34c81d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e7bade9ae45737c1d00480ed2d3fc21a9f4fecbd0a0819b95f0eaa9ca34c81d7", kill_on_drop: false }`
[INFO] [stdout] e7bade9ae45737c1d00480ed2d3fc21a9f4fecbd0a0819b95f0eaa9ca34c81d7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bf763e1919eb763d00a2e9797f14ee9b3b0d80272a05fc897e8139800eefe62f
[INFO] running `Command { std: "docker" "start" "-a" "bf763e1919eb763d00a2e9797f14ee9b3b0d80272a05fc897e8139800eefe62f", kill_on_drop: false }`
[INFO] [stderr]    Compiling algorithm v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `max_heap::MaxHeap`
[INFO] [stdout]  --> src/heap/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use max_heap::MaxHeap;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `min_heap::MinHeap`
[INFO] [stdout]  --> src/heap/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use min_heap::MinHeap;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/topics/binary_search.rs:19:29
[INFO] [stdout]    |
[INFO] [stdout] 19 |             hours_needed += ((*pile + speed - 1) / speed);
[INFO] [stdout]    |                             ^                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -             hours_needed += ((*pile + speed - 1) / speed);
[INFO] [stdout] 19 +             hours_needed += (*pile + speed - 1) / speed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `sum` is assigned to, but never used
[INFO] [stdout]   --> src/link/mod.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut sum = carry;
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_sum` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `sum` is never read
[INFO] [stdout]   --> src/link/mod.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             sum += node.val;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `prev` is never read
[INFO] [stdout]   --> src/stack/monotone_stack.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut prev = 0;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur_index` is never read
[INFO] [stdout]   --> src/stack/monotone_stack.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let mut cur_index = 0;
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur_turns` is never read
[INFO] [stdout]    --> src/stack/monotone_stack.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut cur_turns = 0;
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `mid` is never read
[INFO] [stdout]   --> src/topics/binary_search.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let mut mid = 0;
[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/topics/diff.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let mut tries = grid.clone();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/topics/dsu.rs:111:29
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn ok(a: &str, b: &str, k: usize) -> bool {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]  --> src/array/mod.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn merge<T: PartialOrd + Copy>(array: &mut [T], l: usize, m: usize, r: usize) {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `heap_insert` is never used
[INFO] [stdout]   --> src/array/mod.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn heap_insert<T: PartialOrd + Copy>(array: &mut [T], index: usize) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `heapify` is never used
[INFO] [stdout]   --> src/array/mod.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn heapify<T: PartialOrd + Copy>(array: &mut [T], index: usize, size: usize) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lis` is never used
[INFO] [stdout]  --> src/array/search/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn lis<T: PartialOrd>(nums: &[T]) -> usize {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_left` is never used
[INFO] [stdout]   --> src/array/search/mod.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn find_left<T: PartialOrd>(nums: &[T], target: T) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_peak_element` is never used
[INFO] [stdout]   --> src/array/search/mod.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn find_peak_element(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sort` is never constructed
[INFO] [stdout]  --> src/array/sort/mod.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Sort<'a, T>
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/array/sort/mod.rs:15:12
[INFO] [stdout]     |
[INFO] [stdout] 10  | / impl<'a, T> Sort<'a, T>
[INFO] [stdout] 11  | | where
[INFO] [stdout] 12  | |     T: PartialOrd + Copy,
[INFO] [stdout]     | |_________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15  |       pub fn from(array: &'a mut [T]) -> Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19  |       fn swap(&mut self, a: usize, b: usize) {
[INFO] [stdout]     |          ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |       pub fn select_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45  |       pub fn bubble_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |       pub fn insert_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77  |       pub fn merge_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |       pub fn merge_sort_recursion(&mut self, l: usize, r: usize) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |       pub fn heap_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_binary` is never used
[INFO] [stdout]  --> src/bit/mod.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn print_binary(num: i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `missing_number` is never used
[INFO] [stdout]   --> src/bit/mod.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn missing_number(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_number_i` is never used
[INFO] [stdout]   --> src/bit/mod.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn single_number_i(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_number_ii` is never used
[INFO] [stdout]   --> src/bit/mod.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn single_number_ii(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `two_single_number_iii` is never used
[INFO] [stdout]   --> src/bit/mod.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub fn two_single_number_iii(nums: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_power_of_two` is never used
[INFO] [stdout]   --> src/bit/mod.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn is_power_of_two(n: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_bitwise_and` is never used
[INFO] [stdout]    --> src/bit/mod.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn range_bitwise_and(left: i32, right: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_bits` is never used
[INFO] [stdout]    --> src/bit/mod.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn reverse_bits(x: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_add` is never used
[INFO] [stdout]    --> src/bit/mod.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn binary_add(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_minus` is never used
[INFO] [stdout]    --> src/bit/mod.rs:135:8
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub fn binary_minus(a: i32, b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_mul` is never used
[INFO] [stdout]    --> src/bit/mod.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn binary_mul(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_div` is never used
[INFO] [stdout]    --> src/bit/mod.rs:154:8
[INFO] [stdout]     |
[INFO] [stdout] 154 | pub fn binary_div(a: i32, b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_n_queens` is never used
[INFO] [stdout]    --> src/bit/mod.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub fn total_n_queens(n: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SetAll` is never used
[INFO] [stdout]  --> src/hash/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait SetAll {
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_cover` is never used
[INFO] [stdout]   --> src/heap/mod.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn max_cover(lines: &Vec<[i32; 2]>) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `F64` is never constructed
[INFO] [stdout]   --> src/heap/mod.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct F64(f64);
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `halve_array` is never used
[INFO] [stdout]   --> src/heap/mod.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn halve_array(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MaxHeap` is never constructed
[INFO] [stdout]  --> src/heap/max_heap.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct MaxHeap {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `pop_max`, `bubble_up`, and `sink_down` are never used
[INFO] [stdout]   --> src/heap/max_heap.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl MaxHeap {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 6  |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub fn insert(&mut self, value: isize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn pop_max(&mut self) -> Option<isize> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn bubble_up(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn sink_down(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MinHeap` is never constructed
[INFO] [stdout]  --> src/heap/min_heap.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct MinHeap {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `pop_min`, `bubble_up`, and `sink_down` are never used
[INFO] [stdout]   --> src/heap/min_heap.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl MinHeap {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 6  |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub fn insert(&mut self, value: isize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn pop_min(&mut self) -> Option<isize> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn bubble_up(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn sink_down(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/link/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     pub fn new(val: i32) -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_two_numbers` is never used
[INFO] [stdout]   --> src/link/mod.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn add_two_numbers(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_k_group` is never used
[INFO] [stdout]   --> src/link/mod.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn reverse_k_group(mut head: Option<Box<ListNode>>, k: i32) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_palindrome` is never used
[INFO] [stdout]   --> src/link/mod.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn is_palindrome(head: Option<Box<ListNode>>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distance_limited_paths_exist` is never used
[INFO] [stdout]  --> src/map/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn distance_limited_paths_exist(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `loud_and_rich` is never used
[INFO] [stdout]  --> src/map/topo_sort.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn loud_and_rich(richer: Vec<Vec<i32>>, quiet: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `daily_temperatures` is never used
[INFO] [stdout]  --> src/stack/monotone_stack.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn daily_temperatures(temperatures: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_subarray_mins` is never used
[INFO] [stdout]   --> src/stack/monotone_stack.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn sum_subarray_mins(arr: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_rectangle_area` is never used
[INFO] [stdout]   --> src/stack/monotone_stack.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn largest_rectangle_area(heights: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_width_ramp` is never used
[INFO] [stdout]    --> src/stack/monotone_stack.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub fn max_width_ramp(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_duplicate_letters` is never used
[INFO] [stdout]    --> src/stack/monotone_stack.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn remove_duplicate_letters(s: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_steps` is never used
[INFO] [stdout]    --> src/stack/monotone_stack.rs:179:8
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub fn total_steps(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_distance` is never used
[INFO] [stdout]   --> src/topics/bfs.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn max_distance(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_cost` is never used
[INFO] [stdout]   --> src/topics/bfs.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn min_cost(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trap_rain_water` is never used
[INFO] [stdout]    --> src/topics/bfs.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn trap_rain_water(mut height_map: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_eating_speed` is never used
[INFO] [stdout]  --> src/topics/binary_search.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn min_eating_speed(piles: Vec<i32>, h: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_array` is never used
[INFO] [stdout]   --> src/topics/binary_search.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn split_array(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `smallest_distance_pair` is never used
[INFO] [stdout]   --> src/topics/binary_search.rs:78:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn smallest_distance_pair(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_run_time` is never used
[INFO] [stdout]    --> src/topics/binary_search.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn max_run_time(n: i32, batteries: Vec<i32>) -> i64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `corp_flight_bookings` is never used
[INFO] [stdout]  --> src/topics/diff.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn corp_flight_bookings(bookings: Vec<Vec<i32>>, n: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumMatrix` is never constructed
[INFO] [stdout]   --> src/topics/diff.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct NumMatrix {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `sum_region` are never used
[INFO] [stdout]   --> src/topics/diff.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl NumMatrix {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 30 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest1_bordered_square` is never used
[INFO] [stdout]   --> src/topics/diff.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn largest1_bordered_square(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `possible_to_stamp` is never used
[INFO] [stdout]    --> src/topics/diff.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn possible_to_stamp(grid: Vec<Vec<i32>>, stamp_height: i32, stamp_width: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort_array_by_parity_ii` is never used
[INFO] [stdout]  --> src/topics/double_pointers.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn sort_array_by_parity_ii(mut nums: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_duplicate` is never used
[INFO] [stdout]   --> src/topics/double_pointers.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn find_duplicate(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_area` is never used
[INFO] [stdout]   --> src/topics/double_pointers.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn max_area(height: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_radius` is never used
[INFO] [stdout]   --> src/topics/double_pointers.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn find_radius(houses: Vec<i32>, heaters: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_missing_positive` is never used
[INFO] [stdout]    --> src/topics/double_pointers.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn first_missing_positive(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_decodings` is never used
[INFO] [stdout]  --> src/topics/dp/dim1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn num_decodings(s: String) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_valid_parentheses` is never used
[INFO] [stdout]   --> src/topics/dp/dim1.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn longest_valid_parentheses(s: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_path_sum` is never used
[INFO] [stdout]  --> src/topics/dp/dim2.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn min_path_sum(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_distinct` is never used
[INFO] [stdout]   --> src/topics/dp/dim2.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn num_distinct(s: String, t: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_distance` is never used
[INFO] [stdout]   --> src/topics/dp/dim2.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn min_distance(word1: String, word2: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_max_form` is never used
[INFO] [stdout]  --> src/topics/dp/dim3.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn find_max_form(strs: Vec<String>, m: i32, n: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `predict_the_winner` is never used
[INFO] [stdout]  --> src/topics/dp/interval.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn predict_the_winner(nums: Vec<i32>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_target_sum_ways` is never used
[INFO] [stdout]  --> src/topics/dp/knapsack.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn find_target_sum_ways(nums: Vec<i32>, target: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `last_stone_weight_ii` is never used
[INFO] [stdout]   --> src/topics/dp/knapsack.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub fn last_stone_weight_ii(stones: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UnionFind` is never constructed
[INFO] [stdout]  --> src/topics/dsu.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct UnionFind {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `find`, and `union` are never used
[INFO] [stdout]   --> src/topics/dsu.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl UnionFind {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 9  |     pub fn new(n: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn find(&mut self, x: usize) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn union(&mut self, x: usize, y: usize) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_swaps_couples` is never used
[INFO] [stdout]   --> src/topics/dsu.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn min_swaps_couples(row: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_similar_groups` is never used
[INFO] [stdout]   --> src/topics/dsu.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn num_similar_groups(strs: Vec<String>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_islands` is never used
[INFO] [stdout]    --> src/topics/dsu.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn num_islands(grid: Vec<Vec<char>>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_number` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn largest_number(mut nums: Vec<i32>) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `two_city_sched_cost` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn two_city_sched_cost(costs: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_days` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn min_days(n: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schedule_course` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn schedule_course(courses: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_value` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn max_value(n: i32, k: usize) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_unsorted_subarray` is never used
[INFO] [stdout]    --> src/topics/greedy/mod.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn find_unsorted_subarray(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `power` is never used
[INFO] [stdout]  --> src/topics/greedy/utils.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn power(mut base: i32, mut exponent: i32, model: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_sub_array_len` is never used
[INFO] [stdout]  --> src/topics/sliding_window.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn min_sub_array_len(target: i32, nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `length_of_longest_substring` is never used
[INFO] [stdout]   --> src/topics/sliding_window.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn length_of_longest_substring(s: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `can_complete_circuit` is never used
[INFO] [stdout]   --> src/topics/sliding_window.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn can_complete_circuit(gas: Vec<i32>, cost: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subarrays_with_k_distinct` is never used
[INFO] [stdout]   --> src/topics/sliding_window.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn subarrays_with_k_distinct(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_substring` is never used
[INFO] [stdout]    --> src/topics/sliding_window.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn longest_substring(s: String, k: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.85s
[INFO] running `Command { std: "docker" "inspect" "bf763e1919eb763d00a2e9797f14ee9b3b0d80272a05fc897e8139800eefe62f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf763e1919eb763d00a2e9797f14ee9b3b0d80272a05fc897e8139800eefe62f", kill_on_drop: false }`
[INFO] [stdout] bf763e1919eb763d00a2e9797f14ee9b3b0d80272a05fc897e8139800eefe62f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6e567af7d65b2072d4b4769cc01275105892040270b77a8bcb11b9694db6e357
[INFO] running `Command { std: "docker" "start" "-a" "6e567af7d65b2072d4b4769cc01275105892040270b77a8bcb11b9694db6e357", kill_on_drop: false }`
[INFO] [stderr]    Compiling algorithm v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `max_heap::MaxHeap`
[INFO] [stdout]  --> src/heap/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use max_heap::MaxHeap;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `min_heap::MinHeap`
[INFO] [stdout]  --> src/heap/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use min_heap::MinHeap;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/topics/binary_search.rs:19:29
[INFO] [stdout]    |
[INFO] [stdout] 19 |             hours_needed += ((*pile + speed - 1) / speed);
[INFO] [stdout]    |                             ^                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -             hours_needed += ((*pile + speed - 1) / speed);
[INFO] [stdout] 19 +             hours_needed += (*pile + speed - 1) / speed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `sum` is assigned to, but never used
[INFO] [stdout]   --> src/link/mod.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut sum = carry;
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_sum` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `sum` is never read
[INFO] [stdout]   --> src/link/mod.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             sum += node.val;
[INFO] [stdout]    |             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `prev` is never read
[INFO] [stdout]   --> src/stack/monotone_stack.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut prev = 0;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur_index` is never read
[INFO] [stdout]   --> src/stack/monotone_stack.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let mut cur_index = 0;
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur_turns` is never read
[INFO] [stdout]    --> src/stack/monotone_stack.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut cur_turns = 0;
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `mid` is never read
[INFO] [stdout]   --> src/topics/binary_search.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let mut mid = 0;
[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/topics/diff.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let mut tries = grid.clone();
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/topics/dsu.rs:111:29
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn ok(a: &str, b: &str, k: usize) -> bool {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]  --> src/array/mod.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn merge<T: PartialOrd + Copy>(array: &mut [T], l: usize, m: usize, r: usize) {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `heap_insert` is never used
[INFO] [stdout]   --> src/array/mod.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn heap_insert<T: PartialOrd + Copy>(array: &mut [T], index: usize) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `heapify` is never used
[INFO] [stdout]   --> src/array/mod.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn heapify<T: PartialOrd + Copy>(array: &mut [T], index: usize, size: usize) {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_left` is never used
[INFO] [stdout]   --> src/array/search/mod.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn find_left<T: PartialOrd>(nums: &[T], target: T) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_peak_element` is never used
[INFO] [stdout]   --> src/array/search/mod.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn find_peak_element(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sort` is never constructed
[INFO] [stdout]  --> src/array/sort/mod.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Sort<'a, T>
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/array/sort/mod.rs:15:12
[INFO] [stdout]     |
[INFO] [stdout] 10  | / impl<'a, T> Sort<'a, T>
[INFO] [stdout] 11  | | where
[INFO] [stdout] 12  | |     T: PartialOrd + Copy,
[INFO] [stdout]     | |_________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 15  |       pub fn from(array: &'a mut [T]) -> Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19  |       fn swap(&mut self, a: usize, b: usize) {
[INFO] [stdout]     |          ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27  |       pub fn select_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45  |       pub fn bubble_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61  |       pub fn insert_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77  |       pub fn merge_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |       pub fn merge_sort_recursion(&mut self, l: usize, r: usize) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |       pub fn heap_sort(&mut self) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_binary` is never used
[INFO] [stdout]  --> src/bit/mod.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn print_binary(num: i32) {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `missing_number` is never used
[INFO] [stdout]   --> src/bit/mod.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn missing_number(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_number_i` is never used
[INFO] [stdout]   --> src/bit/mod.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn single_number_i(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `single_number_ii` is never used
[INFO] [stdout]   --> src/bit/mod.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn single_number_ii(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `two_single_number_iii` is never used
[INFO] [stdout]   --> src/bit/mod.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub fn two_single_number_iii(nums: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_power_of_two` is never used
[INFO] [stdout]   --> src/bit/mod.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn is_power_of_two(n: i32) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_bitwise_and` is never used
[INFO] [stdout]    --> src/bit/mod.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn range_bitwise_and(left: i32, right: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_bits` is never used
[INFO] [stdout]    --> src/bit/mod.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn reverse_bits(x: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_add` is never used
[INFO] [stdout]    --> src/bit/mod.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn binary_add(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_minus` is never used
[INFO] [stdout]    --> src/bit/mod.rs:135:8
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub fn binary_minus(a: i32, b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_mul` is never used
[INFO] [stdout]    --> src/bit/mod.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn binary_mul(mut a: i32, mut b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_div` is never used
[INFO] [stdout]    --> src/bit/mod.rs:154:8
[INFO] [stdout]     |
[INFO] [stdout] 154 | pub fn binary_div(a: i32, b: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_n_queens` is never used
[INFO] [stdout]    --> src/bit/mod.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub fn total_n_queens(n: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SetAll` is never used
[INFO] [stdout]  --> src/hash/mod.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait SetAll {
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_cover` is never used
[INFO] [stdout]   --> src/heap/mod.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn max_cover(lines: &Vec<[i32; 2]>) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `F64` is never constructed
[INFO] [stdout]   --> src/heap/mod.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct F64(f64);
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `halve_array` is never used
[INFO] [stdout]   --> src/heap/mod.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn halve_array(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MaxHeap` is never constructed
[INFO] [stdout]  --> src/heap/max_heap.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct MaxHeap {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `pop_max`, `bubble_up`, and `sink_down` are never used
[INFO] [stdout]   --> src/heap/max_heap.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl MaxHeap {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 6  |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub fn insert(&mut self, value: isize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn pop_max(&mut self) -> Option<isize> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn bubble_up(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn sink_down(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MinHeap` is never constructed
[INFO] [stdout]  --> src/heap/min_heap.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct MinHeap {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `pop_min`, `bubble_up`, and `sink_down` are never used
[INFO] [stdout]   --> src/heap/min_heap.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl MinHeap {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 6  |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub fn insert(&mut self, value: isize) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn pop_min(&mut self) -> Option<isize> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn bubble_up(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn sink_down(&mut self, mut index: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/link/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     pub fn new(val: i32) -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_two_numbers` is never used
[INFO] [stdout]   --> src/link/mod.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn add_two_numbers(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_k_group` is never used
[INFO] [stdout]   --> src/link/mod.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn reverse_k_group(mut head: Option<Box<ListNode>>, k: i32) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_palindrome` is never used
[INFO] [stdout]   --> src/link/mod.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn is_palindrome(head: Option<Box<ListNode>>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distance_limited_paths_exist` is never used
[INFO] [stdout]  --> src/map/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn distance_limited_paths_exist(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `loud_and_rich` is never used
[INFO] [stdout]  --> src/map/topo_sort.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn loud_and_rich(richer: Vec<Vec<i32>>, quiet: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `daily_temperatures` is never used
[INFO] [stdout]  --> src/stack/monotone_stack.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn daily_temperatures(temperatures: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_subarray_mins` is never used
[INFO] [stdout]   --> src/stack/monotone_stack.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn sum_subarray_mins(arr: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest_rectangle_area` is never used
[INFO] [stdout]   --> src/stack/monotone_stack.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn largest_rectangle_area(heights: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_width_ramp` is never used
[INFO] [stdout]    --> src/stack/monotone_stack.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub fn max_width_ramp(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_duplicate_letters` is never used
[INFO] [stdout]    --> src/stack/monotone_stack.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn remove_duplicate_letters(s: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_steps` is never used
[INFO] [stdout]    --> src/stack/monotone_stack.rs:179:8
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub fn total_steps(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_distance` is never used
[INFO] [stdout]   --> src/topics/bfs.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn max_distance(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_cost` is never used
[INFO] [stdout]   --> src/topics/bfs.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn min_cost(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trap_rain_water` is never used
[INFO] [stdout]    --> src/topics/bfs.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn trap_rain_water(mut height_map: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `corp_flight_bookings` is never used
[INFO] [stdout]  --> src/topics/diff.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn corp_flight_bookings(bookings: Vec<Vec<i32>>, n: i32) -> Vec<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NumMatrix` is never constructed
[INFO] [stdout]   --> src/topics/diff.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct NumMatrix {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `sum_region` are never used
[INFO] [stdout]   --> src/topics/diff.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl NumMatrix {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 30 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `largest1_bordered_square` is never used
[INFO] [stdout]   --> src/topics/diff.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn largest1_bordered_square(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `possible_to_stamp` is never used
[INFO] [stdout]    --> src/topics/diff.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn possible_to_stamp(grid: Vec<Vec<i32>>, stamp_height: i32, stamp_width: i32) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_possible_to_stamp` is never used
[INFO] [stdout]    --> src/topics/diff.rs:206:8
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn test_possible_to_stamp() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_decodings` is never used
[INFO] [stdout]  --> src/topics/dp/dim1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn num_decodings(s: String) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_valid_parentheses` is never used
[INFO] [stdout]   --> src/topics/dp/dim1.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn longest_valid_parentheses(s: String) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UnionFind` is never constructed
[INFO] [stdout]  --> src/topics/dsu.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct UnionFind {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `find`, and `union` are never used
[INFO] [stdout]   --> src/topics/dsu.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl UnionFind {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 9  |     pub fn new(n: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn find(&mut self, x: usize) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn union(&mut self, x: usize, y: usize) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_swaps_couples` is never used
[INFO] [stdout]   --> src/topics/dsu.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn min_swaps_couples(row: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_similar_groups` is never used
[INFO] [stdout]   --> src/topics/dsu.rs:85:8
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn num_similar_groups(strs: Vec<String>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_islands` is never used
[INFO] [stdout]    --> src/topics/dsu.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub fn num_islands(grid: Vec<Vec<char>>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `schedule_course` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn schedule_course(courses: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_value` is never used
[INFO] [stdout]   --> src/topics/greedy/mod.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn max_value(n: i32, k: usize) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_unsorted_subarray` is never used
[INFO] [stdout]    --> src/topics/greedy/mod.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn find_unsorted_subarray(nums: Vec<i32>) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `power` is never used
[INFO] [stdout]  --> src/topics/greedy/utils.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn power(mut base: i32, mut exponent: i32, model: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subarrays_with_k_distinct` is never used
[INFO] [stdout]   --> src/topics/sliding_window.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn subarrays_with_k_distinct(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_substring` is never used
[INFO] [stdout]    --> src/topics/sliding_window.rs:121:8
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub fn longest_substring(s: String, k: i32) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.45s
[INFO] running `Command { std: "docker" "inspect" "6e567af7d65b2072d4b4769cc01275105892040270b77a8bcb11b9694db6e357", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e567af7d65b2072d4b4769cc01275105892040270b77a8bcb11b9694db6e357", kill_on_drop: false }`
[INFO] [stdout] 6e567af7d65b2072d4b4769cc01275105892040270b77a8bcb11b9694db6e357
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c1e5bb727c94580d4fe515e62c080ce2037080654f984e96678c257a5c525dc0
[INFO] running `Command { std: "docker" "start" "-a" "c1e5bb727c94580d4fe515e62c080ce2037080654f984e96678c257a5c525dc0", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `max_heap::MaxHeap`
[INFO] [stderr]  --> src/heap/mod.rs:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub use max_heap::MaxHeap;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `min_heap::MinHeap`
[INFO] [stderr]  --> src/heap/mod.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub use min_heap::MinHeap;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/topics/binary_search.rs:19:29
[INFO] [stderr]    |
[INFO] [stderr] 19 |             hours_needed += ((*pile + speed - 1) / speed);
[INFO] [stderr]    |                             ^                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 19 -             hours_needed += ((*pile + speed - 1) / speed);
[INFO] [stderr] 19 +             hours_needed += (*pile + speed - 1) / speed;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variable `sum` is assigned to, but never used
[INFO] [stderr]   --> src/link/mod.rs:25:17
[INFO] [stderr]    |
[INFO] [stderr] 25 |         let mut sum = carry;
[INFO] [stderr]    |                 ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: consider using `_sum` instead
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `sum` is never read
[INFO] [stderr]   --> src/link/mod.rs:31:13
[INFO] [stderr]    |
[INFO] [stderr] 31 |             sum += node.val;
[INFO] [stderr]    |             ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `prev` is never read
[INFO] [stderr]   --> src/stack/monotone_stack.rs:78:13
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let mut prev = 0;
[INFO] [stderr]    |             ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `cur_index` is never read
[INFO] [stderr]   --> src/stack/monotone_stack.rs:79:13
[INFO] [stderr]    |
[INFO] [stderr] 79 |     let mut cur_index = 0;
[INFO] [stderr]    |             ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `cur_turns` is never read
[INFO] [stderr]    --> src/stack/monotone_stack.rs:182:13
[INFO] [stderr]     |
[INFO] [stderr] 182 |     let mut cur_turns = 0;
[INFO] [stderr]     |             ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `mid` is never read
[INFO] [stderr]   --> src/topics/binary_search.rs:80:13
[INFO] [stderr]    |
[INFO] [stderr] 80 |     let mut mid = 0;
[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/topics/diff.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 60 |     let mut tries = grid.clone();
[INFO] [stderr]    |         ----^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `k`
[INFO] [stderr]    --> src/topics/dsu.rs:111:29
[INFO] [stderr]     |
[INFO] [stderr] 111 |     fn ok(a: &str, b: &str, k: usize) -> bool {
[INFO] [stderr]     |                             ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stderr] 
[INFO] [stderr] warning: function `merge` is never used
[INFO] [stderr]  --> src/array/mod.rs:7:4
[INFO] [stderr]   |
[INFO] [stderr] 7 | fn merge<T: PartialOrd + Copy>(array: &mut [T], l: usize, m: usize, r: usize) {
[INFO] [stderr]   |    ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `heap_insert` is never used
[INFO] [stderr]   --> src/array/mod.rs:43:4
[INFO] [stderr]    |
[INFO] [stderr] 43 | fn heap_insert<T: PartialOrd + Copy>(array: &mut [T], index: usize) {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `heapify` is never used
[INFO] [stderr]   --> src/array/mod.rs:53:4
[INFO] [stderr]    |
[INFO] [stderr] 53 | fn heapify<T: PartialOrd + Copy>(array: &mut [T], index: usize, size: usize) {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_left` is never used
[INFO] [stderr]   --> src/array/search/mod.rs:26:8
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn find_left<T: PartialOrd>(nums: &[T], target: T) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_peak_element` is never used
[INFO] [stderr]   --> src/array/search/mod.rs:53:8
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub fn find_peak_element(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Sort` is never constructed
[INFO] [stderr]  --> src/array/sort/mod.rs:3:12
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub struct Sort<'a, T>
[INFO] [stderr]   |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/array/sort/mod.rs:15:12
[INFO] [stderr]     |
[INFO] [stderr] 10  | / impl<'a, T> Sort<'a, T>
[INFO] [stderr] 11  | | where
[INFO] [stderr] 12  | |     T: PartialOrd + Copy,
[INFO] [stderr]     | |_________________________- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 15  |       pub fn from(array: &'a mut [T]) -> Self {
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 19  |       fn swap(&mut self, a: usize, b: usize) {
[INFO] [stderr]     |          ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27  |       pub fn select_sort(&mut self) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 45  |       pub fn bubble_sort(&mut self) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61  |       pub fn insert_sort(&mut self) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 77  |       pub fn merge_sort(&mut self) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |       pub fn merge_sort_recursion(&mut self, l: usize, r: usize) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 115 |       pub fn heap_sort(&mut self) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_binary` is never used
[INFO] [stderr]  --> src/bit/mod.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn print_binary(num: i32) {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `missing_number` is never used
[INFO] [stderr]   --> src/bit/mod.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn missing_number(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `single_number_i` is never used
[INFO] [stderr]   --> src/bit/mod.rs:39:8
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub fn single_number_i(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `single_number_ii` is never used
[INFO] [stderr]   --> src/bit/mod.rs:53:8
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub fn single_number_ii(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `two_single_number_iii` is never used
[INFO] [stderr]   --> src/bit/mod.rs:79:8
[INFO] [stderr]    |
[INFO] [stderr] 79 | pub fn two_single_number_iii(nums: Vec<i32>) -> Vec<i32> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_power_of_two` is never used
[INFO] [stderr]   --> src/bit/mod.rs:95:8
[INFO] [stderr]    |
[INFO] [stderr] 95 | pub fn is_power_of_two(n: i32) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `range_bitwise_and` is never used
[INFO] [stderr]    --> src/bit/mod.rs:103:8
[INFO] [stderr]     |
[INFO] [stderr] 103 | pub fn range_bitwise_and(left: i32, right: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reverse_bits` is never used
[INFO] [stderr]    --> src/bit/mod.rs:115:8
[INFO] [stderr]     |
[INFO] [stderr] 115 | pub fn reverse_bits(x: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `binary_add` is never used
[INFO] [stderr]    --> src/bit/mod.rs:125:8
[INFO] [stderr]     |
[INFO] [stderr] 125 | pub fn binary_add(mut a: i32, mut b: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `binary_minus` is never used
[INFO] [stderr]    --> src/bit/mod.rs:135:8
[INFO] [stderr]     |
[INFO] [stderr] 135 | pub fn binary_minus(a: i32, b: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `binary_mul` is never used
[INFO] [stderr]    --> src/bit/mod.rs:142:8
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub fn binary_mul(mut a: i32, mut b: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `binary_div` is never used
[INFO] [stderr]    --> src/bit/mod.rs:154:8
[INFO] [stderr]     |
[INFO] [stderr] 154 | pub fn binary_div(a: i32, b: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `total_n_queens` is never used
[INFO] [stderr]    --> src/bit/mod.rs:213:8
[INFO] [stderr]     |
[INFO] [stderr] 213 | pub fn total_n_queens(n: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `SetAll` is never used
[INFO] [stderr]  --> src/hash/mod.rs:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | trait SetAll {
[INFO] [stderr]   |       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_cover` is never used
[INFO] [stderr]   --> src/heap/mod.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub fn max_cover(lines: &Vec<[i32; 2]>) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `F64` is never constructed
[INFO] [stderr]   --> src/heap/mod.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | struct F64(f64);
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `halve_array` is never used
[INFO] [stderr]   --> src/heap/mod.rs:47:8
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn halve_array(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MaxHeap` is never constructed
[INFO] [stderr]  --> src/heap/max_heap.rs:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub struct MaxHeap {
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `insert`, `pop_max`, `bubble_up`, and `sink_down` are never used
[INFO] [stderr]   --> src/heap/max_heap.rs:6:12
[INFO] [stderr]    |
[INFO] [stderr] 5  | impl MaxHeap {
[INFO] [stderr]    | ------------ associated items in this implementation
[INFO] [stderr] 6  |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 10 |     pub fn insert(&mut self, value: isize) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     pub fn pop_max(&mut self) -> Option<isize> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     fn bubble_up(&mut self, mut index: usize) {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     fn sink_down(&mut self, mut index: usize) {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MinHeap` is never constructed
[INFO] [stderr]  --> src/heap/min_heap.rs:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub struct MinHeap {
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `insert`, `pop_min`, `bubble_up`, and `sink_down` are never used
[INFO] [stderr]   --> src/heap/min_heap.rs:6:12
[INFO] [stderr]    |
[INFO] [stderr] 5  | impl MinHeap {
[INFO] [stderr]    | ------------ associated items in this implementation
[INFO] [stderr] 6  |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 10 |     pub fn insert(&mut self, value: isize) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     pub fn pop_min(&mut self) -> Option<isize> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     fn bubble_up(&mut self, mut index: usize) {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     fn sink_down(&mut self, mut index: usize) {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]  --> src/link/mod.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl ListNode {
[INFO] [stderr]   | ------------- associated function in this implementation
[INFO] [stderr] 8 |     #[inline]
[INFO] [stderr] 9 |     pub fn new(val: i32) -> Self {
[INFO] [stderr]   |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_two_numbers` is never used
[INFO] [stderr]   --> src/link/mod.rs:14:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub fn add_two_numbers(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reverse_k_group` is never used
[INFO] [stderr]   --> src/link/mod.rs:48:8
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub fn reverse_k_group(mut head: Option<Box<ListNode>>, k: i32) -> Option<Box<ListNode>> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_palindrome` is never used
[INFO] [stderr]   --> src/link/mod.rs:71:8
[INFO] [stderr]    |
[INFO] [stderr] 71 | pub fn is_palindrome(head: Option<Box<ListNode>>) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `distance_limited_paths_exist` is never used
[INFO] [stderr]  --> src/map/mod.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub fn distance_limited_paths_exist(
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `loud_and_rich` is never used
[INFO] [stderr]  --> src/map/topo_sort.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub fn loud_and_rich(richer: Vec<Vec<i32>>, quiet: Vec<i32>) -> Vec<i32> {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `daily_temperatures` is never used
[INFO] [stderr]  --> src/stack/monotone_stack.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn daily_temperatures(temperatures: Vec<i32>) -> Vec<i32> {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sum_subarray_mins` is never used
[INFO] [stderr]   --> src/stack/monotone_stack.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn sum_subarray_mins(arr: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `largest_rectangle_area` is never used
[INFO] [stderr]   --> src/stack/monotone_stack.rs:74:8
[INFO] [stderr]    |
[INFO] [stderr] 74 | pub fn largest_rectangle_area(heights: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_width_ramp` is never used
[INFO] [stderr]    --> src/stack/monotone_stack.rs:111:8
[INFO] [stderr]     |
[INFO] [stderr] 111 | pub fn max_width_ramp(nums: Vec<i32>) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `remove_duplicate_letters` is never used
[INFO] [stderr]    --> src/stack/monotone_stack.rs:138:8
[INFO] [stderr]     |
[INFO] [stderr] 138 | pub fn remove_duplicate_letters(s: String) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `total_steps` is never used
[INFO] [stderr]    --> src/stack/monotone_stack.rs:179:8
[INFO] [stderr]     |
[INFO] [stderr] 179 | pub fn total_steps(nums: Vec<i32>) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_distance` is never used
[INFO] [stderr]   --> src/topics/bfs.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn max_distance(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `min_cost` is never used
[INFO] [stderr]   --> src/topics/bfs.rs:71:8
[INFO] [stderr]    |
[INFO] [stderr] 71 | pub fn min_cost(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `trap_rain_water` is never used
[INFO] [stderr]    --> src/topics/bfs.rs:151:8
[INFO] [stderr]     |
[INFO] [stderr] 151 | pub fn trap_rain_water(mut height_map: Vec<Vec<i32>>) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `corp_flight_bookings` is never used
[INFO] [stderr]  --> src/topics/diff.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn corp_flight_bookings(bookings: Vec<Vec<i32>>, n: i32) -> Vec<i32> {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NumMatrix` is never constructed
[INFO] [stderr]   --> src/topics/diff.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | struct NumMatrix {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `sum_region` are never used
[INFO] [stderr]   --> src/topics/diff.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 29 | impl NumMatrix {
[INFO] [stderr]    | -------------- associated items in this implementation
[INFO] [stderr] 30 |     fn new(matrix: Vec<Vec<i32>>) -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 45 |     fn sum_region(&self, row1: i32, col1: i32, row2: i32, col2: i32) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `largest1_bordered_square` is never used
[INFO] [stderr]   --> src/topics/diff.rs:57:8
[INFO] [stderr]    |
[INFO] [stderr] 57 | pub fn largest1_bordered_square(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `possible_to_stamp` is never used
[INFO] [stderr]    --> src/topics/diff.rs:123:8
[INFO] [stderr]     |
[INFO] [stderr] 123 | pub fn possible_to_stamp(grid: Vec<Vec<i32>>, stamp_height: i32, stamp_width: i32) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_possible_to_stamp` is never used
[INFO] [stderr]    --> src/topics/diff.rs:206:8
[INFO] [stderr]     |
[INFO] [stderr] 206 |     fn test_possible_to_stamp() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `num_decodings` is never used
[INFO] [stderr]  --> src/topics/dp/dim1.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn num_decodings(s: String) -> i32 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `longest_valid_parentheses` is never used
[INFO] [stderr]   --> src/topics/dp/dim1.rs:49:8
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub fn longest_valid_parentheses(s: String) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `UnionFind` is never constructed
[INFO] [stderr]  --> src/topics/dsu.rs:3:12
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub struct UnionFind {
[INFO] [stderr]   |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `find`, and `union` are never used
[INFO] [stderr]   --> src/topics/dsu.rs:9:12
[INFO] [stderr]    |
[INFO] [stderr] 8  | impl UnionFind {
[INFO] [stderr]    | -------------- associated items in this implementation
[INFO] [stderr] 9  |     pub fn new(n: usize) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     pub fn find(&mut self, x: usize) -> usize {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     pub fn union(&mut self, x: usize, y: usize) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `min_swaps_couples` is never used
[INFO] [stderr]   --> src/topics/dsu.rs:41:8
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub fn min_swaps_couples(row: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `num_similar_groups` is never used
[INFO] [stderr]   --> src/topics/dsu.rs:85:8
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub fn num_similar_groups(strs: Vec<String>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `num_islands` is never used
[INFO] [stderr]    --> src/topics/dsu.rs:142:8
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub fn num_islands(grid: Vec<Vec<char>>) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `schedule_course` is never used
[INFO] [stderr]   --> src/topics/greedy/mod.rs:62:8
[INFO] [stderr]    |
[INFO] [stderr] 62 | pub fn schedule_course(courses: Vec<Vec<i32>>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_value` is never used
[INFO] [stderr]   --> src/topics/greedy/mod.rs:98:8
[INFO] [stderr]    |
[INFO] [stderr] 98 | pub fn max_value(n: i32, k: usize) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_unsorted_subarray` is never used
[INFO] [stderr]    --> src/topics/greedy/mod.rs:113:8
[INFO] [stderr]     |
[INFO] [stderr] 113 | pub fn find_unsorted_subarray(nums: Vec<i32>) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `power` is never used
[INFO] [stderr]  --> src/topics/greedy/utils.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn power(mut base: i32, mut exponent: i32, model: i32) -> i32 {
[INFO] [stderr]   |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `subarrays_with_k_distinct` is never used
[INFO] [stderr]   --> src/topics/sliding_window.rs:87:8
[INFO] [stderr]    |
[INFO] [stderr] 87 | pub fn subarrays_with_k_distinct(nums: Vec<i32>, k: i32) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `longest_substring` is never used
[INFO] [stderr]    --> src/topics/sliding_window.rs:121:8
[INFO] [stderr]     |
[INFO] [stderr] 121 | pub fn longest_substring(s: String, k: i32) -> i32 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `algorithm` (bin "algorithm" test) generated 73 warnings (run `cargo fix --bin "algorithm" --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib/mod.rs (/opt/rustwide/target/debug/deps/algorithm-7b04396e12e7e48c)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::check_lcm ... ok
[INFO] [stdout] test tests::check_gcd ... ok
[INFO] [stdout] test tests::check_nth_magical_number has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "c1e5bb727c94580d4fe515e62c080ce2037080654f984e96678c257a5c525dc0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1e5bb727c94580d4fe515e62c080ce2037080654f984e96678c257a5c525dc0", kill_on_drop: false }`
[INFO] [stdout] c1e5bb727c94580d4fe515e62c080ce2037080654f984e96678c257a5c525dc0
