[INFO] cloning repository https://github.com/Finc8888/hello-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Finc8888/hello-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFinc8888%2Fhello-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFinc8888%2Fhello-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d03345e5c7b5fac70b7d3a278a2d433f26dbded4
[INFO] checking Finc8888/hello-rust against 6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa for pr-159356
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFinc8888%2Fhello-rust" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Finc8888/hello-rust
[INFO] finished tweaking git repo https://github.com/Finc8888/hello-rust
[INFO] tweaked toml for git repo https://github.com/Finc8888/hello-rust written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Finc8888/hello-rust on toolchain 6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Finc8888/hello-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" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c36f533e8924a726b63f9d01e781fa8c8c28c96d1d595403829afb31452ee0f5" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e
[INFO] running `Command { std: "docker" "start" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e" "/opt/rustwide/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e" "/opt/rustwide/cargo-home/bin/cargo" "+6e4b95ed0735c3bbfb308e6f158f479b4d14f1aa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking algorithms v0.1.0 (/opt/rustwide/workdir/algorithms)
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]  --> algorithms/src/math.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn add(left: u64, right: u64) -> u64 {
[INFO] [stdout]   |            ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]  --> algorithms/src/math.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn add(left: u64, right: u64) -> u64 {
[INFO] [stdout]   |                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]  --> algorithms/src/math.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn subtract(left: u64, right: u64) -> u64 {
[INFO] [stdout]   |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]  --> algorithms/src/math.rs:9:28
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn subtract(left: u64, right: u64) -> u64 {
[INFO] [stdout]   |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]   --> algorithms/src/math.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn multiply(left: u64, right: u64) -> u64 {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]   --> algorithms/src/math.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn multiply(left: u64, right: u64) -> u64 {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]   --> algorithms/src/math.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn divide(left: u64, right: u64) -> Option<u64> {
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]   --> algorithms/src/math.rs:19:26
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn divide(left: u64, right: u64) -> Option<u64> {
[INFO] [stdout]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base`
[INFO] [stdout]   --> algorithms/src/math.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn power(base: u64, exponent: u32) -> u64 {
[INFO] [stdout]    |              ^^^^ help: if this is intentional, prefix it with an underscore: `_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `exponent`
[INFO] [stdout]   --> algorithms/src/math.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn power(base: u64, exponent: u32) -> u64 {
[INFO] [stdout]    |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exponent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> algorithms/src/math.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn factorial(n: u64) -> u64 {
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> algorithms/src/math.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn gcd(a: u64, b: u64) -> u64 {
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> algorithms/src/math.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub fn gcd(a: u64, b: u64) -> u64 {
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> algorithms/src/math.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn lcm(a: u64, b: u64) -> u64 {
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> algorithms/src/math.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn lcm(a: u64, b: u64) -> u64 {
[INFO] [stdout]    |                    ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]  --> algorithms/src/search.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn linear_search<T: PartialEq>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]   |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]  --> algorithms/src/search.rs:5:47
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn linear_search<T: PartialEq>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]   |                                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn binary_search<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:11:41
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn binary_search<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:16:40
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn binary_search_recursive<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                        ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:16:51
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn binary_search_recursive<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:21:19
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn search<T: Ord>(arr: &[T], target: &T, left: usize, right: usize) -> Option<usize> {
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn search<T: Ord>(arr: &[T], target: &T, left: usize, right: usize) -> Option<usize> {
[INFO] [stdout]    |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]   --> algorithms/src/search.rs:21:42
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn search<T: Ord>(arr: &[T], target: &T, left: usize, right: usize) -> Option<usize> {
[INFO] [stdout]    |                                          ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]   --> algorithms/src/search.rs:21:55
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn search<T: Ord>(arr: &[T], target: &T, left: usize, right: usize) -> Option<usize> {
[INFO] [stdout]    |                                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:26:38
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn find_first_occurrence<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                      ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:26:49
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn find_first_occurrence<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:31:37
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn find_last_occurrence<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:31:48
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn find_last_occurrence<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |                                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:36:43
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn find_all_occurrences<T: PartialEq>(arr: &[T], target: &T) -> Vec<usize> {
[INFO] [stdout]    |                                           ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:36:54
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn find_all_occurrences<T: PartialEq>(arr: &[T], target: &T) -> Vec<usize> {
[INFO] [stdout]    |                                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:41:29
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn interpolation_search(arr: &[i32], target: i32) -> Option<usize> {
[INFO] [stdout]    |                             ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> algorithms/src/search.rs:41:42
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn interpolation_search(arr: &[i32], target: i32) -> Option<usize> {
[INFO] [stdout]    |                                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:46:33
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub fn find_max<T: Ord + Clone>(arr: &[T]) -> Option<T> {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn find_min<T: Ord + Clone>(arr: &[T]) -> Option<T> {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:56:31
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn find_max_index<T: Ord>(arr: &[T]) -> Option<usize> {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/search.rs:61:31
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn find_min_index<T: Ord>(arr: &[T]) -> Option<usize> {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]  --> algorithms/src/sorting.rs:4:36
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn bubble_sort<T: Ord + Clone>(arr: &mut [T]) {
[INFO] [stdout]   |                                    ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]  --> algorithms/src/sorting.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn selection_sort<T: Ord + Clone>(arr: &mut [T]) {
[INFO] [stdout]   |                                       ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/sorting.rs:14:39
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn insertion_sort<T: Ord + Clone>(arr: &mut [T]) {
[INFO] [stdout]    |                                       ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/sorting.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn quick_sort<T: Ord + Clone>(arr: &mut [T]) {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/sorting.rs:24:30
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn partition<T: Ord + Clone>(arr: &mut [T]) -> usize {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/sorting.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn merge_sort<T: Ord + Clone>(arr: &mut [T]) {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `left`
[INFO] [stdout]   --> algorithms/src/sorting.rs:34:26
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn merge<T: Ord + Clone>(left: &[T], right: &[T], arr: &mut [T]) {
[INFO] [stdout]    |                          ^^^^ help: if this is intentional, prefix it with an underscore: `_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right`
[INFO] [stdout]   --> algorithms/src/sorting.rs:34:38
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn merge<T: Ord + Clone>(left: &[T], right: &[T], arr: &mut [T]) {
[INFO] [stdout]    |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_right`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/sorting.rs:34:51
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn merge<T: Ord + Clone>(left: &[T], right: &[T], arr: &mut [T]) {
[INFO] [stdout]    |                                                   ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> algorithms/src/sorting.rs:39:26
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn is_sorted<T: Ord>(arr: &[T]) -> bool {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search` is never used
[INFO] [stdout]   --> algorithms/src/search.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn search<T: Ord>(arr: &[T], target: &T, left: usize, right: usize) -> Option<usize> {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `partition` is never used
[INFO] [stdout]   --> algorithms/src/sorting.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn partition<T: Ord + Clone>(arr: &mut [T]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]   --> algorithms/src/sorting.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn merge<T: Ord + Clone>(left: &[T], right: &[T], arr: &mut [T]) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hello_cargo v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `algorithms::sorting::*`
[INFO] [stdout]  --> src/bin/test_sorting.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use algorithms::sorting::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/bin/test_sorting.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algorithms::search::*`
[INFO] [stdout]  --> src/bin/test_search.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use algorithms::search::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/bin/test_search.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algorithms::search::*`
[INFO] [stdout]  --> src/bin/test_search.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use algorithms::search::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/bin/test_search.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algorithms::math::*`
[INFO] [stdout]  --> src/bin/test_math.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use algorithms::math::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algorithms::math::*`
[INFO] [stdout]  --> src/bin/test_math.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use algorithms::math::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_to_type` is never used
[INFO] [stdout]    --> examples/claude_parse_examples.rs:159:4
[INFO] [stdout]     |
[INFO] [stdout] 159 | fn parse_to_type<T: FromStr>(input: &str) -> Result<T, T::Err> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/bin/test_search.rs:55:23
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn test_linear_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> src/bin/test_search.rs:55:37
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn test_linear_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]   --> src/bin/test_search.rs:55:50
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn test_linear_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/bin/test_search.rs:81:23
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn test_binary_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> src/bin/test_search.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn test_binary_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]   --> src/bin/test_search.rs:81:50
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn test_binary_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:107:33
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn test_binary_search_recursive(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/bin/test_search.rs:107:47
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn test_binary_search_recursive(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]     |                                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]    --> src/bin/test_search.rs:107:60
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn test_binary_search_recursive(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]     |                                                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:157:31
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn test_find_first_occurrence(data: &[i32], target: i32) {
[INFO] [stdout]     |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:175:30
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn test_find_last_occurrence(data: &[i32], target: i32) {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:193:30
[INFO] [stdout]     |
[INFO] [stdout] 193 | fn test_find_all_occurrences(data: &[i32], target: i32) {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn test_find_max_min(data: &[i32]) {
[INFO] [stdout]     |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:269:30
[INFO] [stdout]     |
[INFO] [stdout] 269 | fn test_find_max_min_indices(data: &[i32]) {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `empty`
[INFO] [stdout]    --> src/bin/test_search.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let empty: Vec<i32> = vec![];
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `single`
[INFO] [stdout]    --> src/bin/test_search.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |     let single = vec![42];
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_single`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identical`
[INFO] [stdout]    --> src/bin/test_search.rs:323:9
[INFO] [stdout]     |
[INFO] [stdout] 323 |     let identical = vec![5, 5, 5, 5, 5];
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identical`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:344:13
[INFO] [stdout]     |
[INFO] [stdout] 344 |         let data: Vec<i32> = (0..size).collect();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/test_sorting.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> src/bin/test_sorting.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/test_sorting.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> src/bin/test_sorting.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/test_sorting.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> src/bin/test_sorting.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/bin/test_search.rs:345:13
[INFO] [stdout]     |
[INFO] [stdout] 345 |         let target = size / 2; // Middle element
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]    --> src/bin/test_search.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let missing = "orange";
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]    --> src/bin/test_sorting.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]    --> src/bin/test_sorting.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut test_data = data.clone();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_data`
[INFO] [stdout]    --> src/bin/test_sorting.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut test_data = data.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let mut empty: Vec<i32> = vec![];
[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/bin/test_sorting.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut single = vec![42];
[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/bin/test_sorting.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let mut large = vec![1000000, 500000, 2000000, 100000];
[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/bin/test_sorting.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |     let mut negative = vec![-5, -1, -10, -3, 0, 2, -7];
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `empty`
[INFO] [stdout]    --> src/bin/test_sorting.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let mut empty: Vec<i32> = vec![];
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `single`
[INFO] [stdout]    --> src/bin/test_sorting.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut single = vec![42];
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_single`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `large`
[INFO] [stdout]    --> src/bin/test_sorting.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let mut large = vec![1000000, 500000, 2000000, 100000];
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_large`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `negative`
[INFO] [stdout]    --> src/bin/test_sorting.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |     let mut negative = vec![-5, -1, -10, -3, 0, 2, -7];
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_negative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_sorting.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 |         let data: Vec<i32> = (0..size).rev().collect(); // Worst case for some algorithms
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `claude_first_char_to_lowercase` is never used
[INFO] [stdout]  --> examples/song_text.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn claude_first_char_to_lowercase(s: &str) -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:267:9
[INFO] [stdout]     |
[INFO] [stdout] 267 |     let mut words = vec![
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/bin/test_search.rs:55:23
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn test_linear_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> src/bin/test_search.rs:55:37
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn test_linear_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_with_strings` is never used
[INFO] [stdout]    --> src/bin/test_search.rs:376:4
[INFO] [stdout]     |
[INFO] [stdout] 376 | fn test_with_strings() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]   --> src/bin/test_search.rs:55:50
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn test_linear_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 |         Ok(mut nums) => {
[INFO] [stdout]     |            ----^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `interactive_search` is never used
[INFO] [stdout]    --> src/bin/test_search.rs:415:4
[INFO] [stdout]     |
[INFO] [stdout] 415 | fn interactive_search() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/bin/test_search.rs:81:23
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn test_binary_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |     let mut data = vec![5, 2, 8, 1, 9, 3];
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]   --> src/bin/test_search.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn test_binary_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]   --> src/bin/test_search.rs:81:50
[INFO] [stdout]    |
[INFO] [stdout] 81 | fn test_binary_search(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]    |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_with_strings` is never used
[INFO] [stdout]    --> src/bin/test_sorting.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn test_with_strings() {
[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 `interactive_sorting` is never used
[INFO] [stdout]    --> src/bin/test_sorting.rs:291:4
[INFO] [stdout]     |
[INFO] [stdout] 291 | fn interactive_sorting() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:107:33
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn test_binary_search_recursive(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/bin/test_search.rs:107:47
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn test_binary_search_recursive(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]     |                                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]    --> src/bin/test_search.rs:107:60
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn test_binary_search_recursive(data: &[i32], target: i32, missing: i32) {
[INFO] [stdout]     |                                                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:157:31
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn test_find_first_occurrence(data: &[i32], target: i32) {
[INFO] [stdout]     |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:175:30
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn test_find_last_occurrence(data: &[i32], target: i32) {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:193:30
[INFO] [stdout]     |
[INFO] [stdout] 193 | fn test_find_all_occurrences(data: &[i32], target: i32) {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:250:22
[INFO] [stdout]     |
[INFO] [stdout] 250 | fn test_find_max_min(data: &[i32]) {
[INFO] [stdout]     |                      ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:269:30
[INFO] [stdout]     |
[INFO] [stdout] 269 | fn test_find_max_min_indices(data: &[i32]) {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `empty`
[INFO] [stdout]    --> src/bin/test_search.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let empty: Vec<i32> = vec![];
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `single`
[INFO] [stdout]    --> src/bin/test_search.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |     let single = vec![42];
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_single`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identical`
[INFO] [stdout]    --> src/bin/test_search.rs:323:9
[INFO] [stdout]     |
[INFO] [stdout] 323 |     let identical = vec![5, 5, 5, 5, 5];
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identical`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_search.rs:344:13
[INFO] [stdout]     |
[INFO] [stdout] 344 |         let data: Vec<i32> = (0..size).collect();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/bin/test_search.rs:345:13
[INFO] [stdout]     |
[INFO] [stdout] 345 |         let target = size / 2; // Middle element
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `missing`
[INFO] [stdout]    --> src/bin/test_search.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 |     let missing = "orange";
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_missing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr1`
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let arr1: [i32; 3] = [1, 2, 3];
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_arr1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr2`
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let arr2: [i32; 4] = [1, 2, 3, 4];
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_arr2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec1`
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let vec1: Vec<i32> = vec![1, 2, 3];
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_vec1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vec2`
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let vec2: Vec<i32> = vec![1, 2, 3, 4];
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_vec2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum`
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let sum: i32 = arr.iter().sum();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum`
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let sum: i32 = vec.iter().sum();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_fixed_data` is never used
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:93:4
[INFO] [stdout]    |
[INFO] [stdout] 93 | fn process_fixed_data(data: [i32; 5]) -> 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 `process_dynamic_data` is never used
[INFO] [stdout]   --> examples/claude_array_vs_vec.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn process_dynamic_data(data: Vec<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_with_strings` is never used
[INFO] [stdout]    --> src/bin/test_search.rs:376:4
[INFO] [stdout]     |
[INFO] [stdout] 376 | fn test_with_strings() {
[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 `interactive_search` is never used
[INFO] [stdout]    --> src/bin/test_search.rs:415:4
[INFO] [stdout]     |
[INFO] [stdout] 415 | fn interactive_search() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `first_char`
[INFO] [stdout]   --> examples/claude_lowercase_first.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Some((_, first_char)) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_char`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_char_to_lowercase_v2` is never used
[INFO] [stdout]   --> examples/claude_lowercase_first.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn first_char_to_lowercase_v2(s: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `algorithms::sorting::*`
[INFO] [stdout]  --> src/bin/test_sorting.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use algorithms::sorting::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]  --> src/bin/test_sorting.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::time::Instant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `port`, `max_connections`, and `timeout_seconds` are never read
[INFO] [stdout]    --> examples/claude_error_handling_comparison.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |     struct Config {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 172 |         port: u16,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 173 |         max_connections: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 174 |         timeout_seconds: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Config` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: crater fail !! problematic pattern detected !!
[INFO] [stdout]   --> examples/claude_error_handling_comparison.rs:96:17
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Err(ParseIntError { .. }) => {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type is defined in crate `core`
[INFO] [stdout]    = note: `#[deny(rest_pattern_match_on_struct_with_all_private_fields)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hello_cargo` (example "claude_error_handling_comparison") due to 1 previous error; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/test_sorting.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> src/bin/test_sorting.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/test_sorting.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> src/bin/test_sorting.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/test_sorting.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ----^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]   --> src/bin/test_sorting.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut arr = data.to_vec();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]    --> src/bin/test_sorting.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arr`
[INFO] [stdout]    --> src/bin/test_sorting.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let mut arr = data.to_vec();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut test_data = data.clone();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_data`
[INFO] [stdout]    --> src/bin/test_sorting.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut test_data = data.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let mut empty: Vec<i32> = vec![];
[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/bin/test_sorting.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut single = vec![42];
[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/bin/test_sorting.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let mut large = vec![1000000, 500000, 2000000, 100000];
[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/bin/test_sorting.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |     let mut negative = vec![-5, -1, -10, -3, 0, 2, -7];
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `empty`
[INFO] [stdout]    --> src/bin/test_sorting.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let mut empty: Vec<i32> = vec![];
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `single`
[INFO] [stdout]    --> src/bin/test_sorting.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut single = vec![42];
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_single`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `large`
[INFO] [stdout]    --> src/bin/test_sorting.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let mut large = vec![1000000, 500000, 2000000, 100000];
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_large`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `negative`
[INFO] [stdout]    --> src/bin/test_sorting.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |     let mut negative = vec![-5, -1, -10, -3, 0, 2, -7];
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_negative`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/bin/test_sorting.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 |         let data: Vec<i32> = (0..size).rev().collect(); // Worst case for some algorithms
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/test_sorting.rs:267:9
[INFO] [stdout]     |
[INFO] [stdout] 267 |     let mut words = vec![
[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/bin/test_sorting.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 |         Ok(mut nums) => {
[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/bin/test_sorting.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |     let mut data = vec![5, 2, 8, 1, 9, 3];
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_with_strings` is never used
[INFO] [stdout]    --> src/bin/test_sorting.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn test_with_strings() {
[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 `interactive_sorting` is never used
[INFO] [stdout]    --> src/bin/test_sorting.rs:291:4
[INFO] [stdout]     |
[INFO] [stdout] 291 | fn interactive_sorting() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e", kill_on_drop: false }`
[INFO] [stdout] 97d2b246a494b6039e1feb489466b4d70a961ee7469155a2d487882b332ea37e
