[INFO] cloning repository https://github.com/kokodayou2000/rust_learn [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kokodayou2000/rust_learn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkokodayou2000%2Frust_learn", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkokodayou2000%2Frust_learn'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ce5de19464f1b963a1d280b92adfe8ba2d8115c5 [INFO] testing kokodayou2000/rust_learn/ce5de19464f1b963a1d280b92adfe8ba2d8115c5 against master#d933cf483edf1605142ac6899ff32536c0ad8b22 for pr-150933 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkokodayou2000%2Frust_learn" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/kokodayou2000/rust_learn [INFO] finished tweaking git repo https://github.com/kokodayou2000/rust_learn [INFO] tweaked toml for git repo https://github.com/kokodayou2000/rust_learn written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/kokodayou2000/rust_learn on toolchain d933cf483edf1605142ac6899ff32536c0ad8b22 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/kokodayou2000/rust_learn 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" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.54 [INFO] [stderr] Downloaded zmij v1.0.14 [INFO] [stderr] Downloaded openssl-probe v0.2.0 [INFO] [stderr] Downloaded windows-core v0.62.1 [INFO] [stderr] Downloaded web-sys v0.3.81 [INFO] [stderr] Downloaded libc v0.2.176 [INFO] [stderr] Downloaded windows-sys v0.61.1 [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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 495545c6409daba33b4ea95268e8ec07878ded6c3dbd9891af531d21802a3cc8 [INFO] running `Command { std: "docker" "start" "-a" "495545c6409daba33b4ea95268e8ec07878ded6c3dbd9891af531d21802a3cc8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "495545c6409daba33b4ea95268e8ec07878ded6c3dbd9891af531d21802a3cc8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "495545c6409daba33b4ea95268e8ec07878ded6c3dbd9891af531d21802a3cc8", kill_on_drop: false }` [INFO] [stdout] 495545c6409daba33b4ea95268e8ec07878ded6c3dbd9891af531d21802a3cc8 [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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cee8be7e9e0227122d4e66df44c69fffac248aa2a578ed875021aba5aa62a947 [INFO] running `Command { std: "docker" "start" "-a" "cee8be7e9e0227122d4e66df44c69fffac248aa2a578ed875021aba5aa62a947", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.176 [INFO] [stderr] Compiling cfg-if v1.0.3 [INFO] [stderr] Compiling bitflags v2.9.4 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling value-bag v1.11.1 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling log v0.4.28 [INFO] [stderr] Compiling async-lock v3.4.1 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling kv-log-macro v1.0.7 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling humantime v2.3.0 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling mio v1.1.0 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling fs4 v0.8.4 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling polling v3.11.0 [INFO] [stderr] Compiling async-io v2.6.0 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling async-global-executor v2.4.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling async-std v1.13.2 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling rust_learn v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Arc`, `LockResult`, and `Mutex` [INFO] [stdout] --> src/modules/base/smart_pointer/_3_arc_1.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, LockResult, Mutex}; [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::thread` [INFO] [stdout] --> src/modules/base/smart_pointer/_3_arc_1.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::borrow::Cow` [INFO] [stdout] --> src/modules/base/smart_pointer/_4_cow_1.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use alloc::borrow::Cow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let a = Person{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `ListNode` is more private than the item `add_two_numbers` [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / pub fn add_two_numbers( [INFO] [stdout] 17 | | l1: Option>, [INFO] [stdout] 18 | | l2: Option>, [INFO] [stdout] 19 | | ) -> Option> { [INFO] [stdout] | |__________________________^ function `add_two_numbers` is reachable at visibility `pub(in crate::modules::leetcode)` [INFO] [stdout] | [INFO] [stdout] note: but type `ListNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | struct ListNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read [INFO] [stdout] --> src/modules/base/tuple.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | struct Matrix(f32, f32, f32, f32); [INFO] [stdout] | ------ ^^^ ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `Matrix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Unit` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Unit; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Pair(i32, f32); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> src/modules/base/structure.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 17 | x: f32, [INFO] [stdout] | ^ [INFO] [stdout] 18 | y: f32, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `structures_test` is never used [INFO] [stdout] --> src/modules/base/structure.rs:29:4 [INFO] [stdout] | [INFO] [stdout] 29 | fn structures_test() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Centimeters` is never constructed [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Centimeters(f64); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Inches` is never constructed [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Inches(i32); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_centimeters` is never used [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl Inches { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 10 | fn to_centimeters(&self) -> Centimeters { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Seconds` is never constructed [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Seconds(i32); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `task` is never used [INFO] [stdout] --> src/modules/base/async_feature/simple_async.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | async fn task() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MyBox` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_1_defer_1.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct MyBox(T); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_drop` is never used [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn test_drop() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Address` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Address { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_city` and `add_note` are never used [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 22 | impl Person { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 23 | // 接收 &self,但内部仍然可以修改 [INFO] [stdout] 24 | fn update_city(&self, new_city: &str) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn add_note(&self, text: &str) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/examples/code_style.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | pub(crate) struct Person{ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/modules/examples/code_style.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 5 | impl Person { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 6 | pub(crate) fn new() -> Person { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `f1` is never used [INFO] [stdout] --> src/modules/examples/code_style.rs:15:19 [INFO] [stdout] | [INFO] [stdout] 14 | impl Person{ [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 15 | pub(crate) fn f1(&self){ [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `f2` is never used [INFO] [stdout] --> src/modules/examples/code_style.rs:21:19 [INFO] [stdout] | [INFO] [stdout] 20 | impl Person{ [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 21 | pub(crate) fn f2(&self){ [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Calculator` is never constructed [INFO] [stdout] --> src/modules/examples/fib_calc.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct Calculator<'ctx> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `eval` are never used [INFO] [stdout] --> src/modules/examples/fib_calc.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl<'ctx> Calculator<'ctx> { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(f: F) -> Self [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn eval(&self, input: i64) -> i64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Gender` is never used [INFO] [stdout] --> src/modules/diff/diff_java.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | enum Gender { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/diff/diff_java.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/modules/diff/diff_java.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 32 | impl Person { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 33 | // 构造函数 [INFO] [stdout] 34 | fn new(name: String, gender: Gender) -> Person { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff_java_override_to_string` is never used [INFO] [stdout] --> src/modules/diff/diff_java.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn diff_java_override_to_string(name: String,gender: Gender) -> Person { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `two_sum` is never used [INFO] [stdout] --> src/modules/leetcode/_1_two_sum.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn two_sum(nums: Vec, target: i32) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ListNode` is never constructed [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct ListNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl ListNode { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 9 | #[inline] [INFO] [stdout] 10 | 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/modules/leetcode/_2_two_add.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn add_two_numbers( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Logger` is never used [INFO] [stdout] --> src/modules/advance/log/mod.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait Logger: Send + Debug { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConsoleLogger` is never constructed [INFO] [stdout] --> src/modules/advance/log/console_logger.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct ConsoleLogger { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FileLogger` is never constructed [INFO] [stdout] --> src/modules/advance/log/file_logger.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct FileLogger { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s [INFO] running `Command { std: "docker" "inspect" "cee8be7e9e0227122d4e66df44c69fffac248aa2a578ed875021aba5aa62a947", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cee8be7e9e0227122d4e66df44c69fffac248aa2a578ed875021aba5aa62a947", kill_on_drop: false }` [INFO] [stdout] cee8be7e9e0227122d4e66df44c69fffac248aa2a578ed875021aba5aa62a947 [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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1147f605fb6211a89b85940aa6e0dcfb12b8d469d0b57a4c7c3d7aa0ec921cab [INFO] running `Command { std: "docker" "start" "-a" "1147f605fb6211a89b85940aa6e0dcfb12b8d469d0b57a4c7c3d7aa0ec921cab", kill_on_drop: false }` [INFO] [stdout] warning: unused imports: `Arc`, `LockResult`, and `Mutex` [INFO] [stdout] --> src/modules/base/smart_pointer/_3_arc_1.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, LockResult, Mutex}; [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::thread` [INFO] [stdout] --> src/modules/base/smart_pointer/_3_arc_1.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::borrow::Cow` [INFO] [stdout] --> src/modules/base/smart_pointer/_4_cow_1.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use alloc::borrow::Cow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let a = Person{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `ListNode` is more private than the item `add_two_numbers` [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / pub fn add_two_numbers( [INFO] [stdout] 17 | | l1: Option>, [INFO] [stdout] 18 | | l2: Option>, [INFO] [stdout] 19 | | ) -> Option> { [INFO] [stdout] | |__________________________^ function `add_two_numbers` is reachable at visibility `pub(in crate::modules::leetcode)` [INFO] [stdout] | [INFO] [stdout] note: but type `ListNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | struct ListNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read [INFO] [stdout] --> src/modules/base/tuple.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | struct Matrix(f32, f32, f32, f32); [INFO] [stdout] | ------ ^^^ ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `Matrix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Unit` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Unit; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Pair(i32, f32); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> src/modules/base/structure.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 17 | x: f32, [INFO] [stdout] | ^ [INFO] [stdout] 18 | y: f32, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `structures_test` is never used [INFO] [stdout] --> src/modules/base/structure.rs:29:4 [INFO] [stdout] | [INFO] [stdout] 29 | fn structures_test() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Centimeters` is never constructed [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Centimeters(f64); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Inches` is never constructed [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Inches(i32); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_centimeters` is never used [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl Inches { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 10 | fn to_centimeters(&self) -> Centimeters { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Seconds` is never constructed [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | struct Seconds(i32); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `task` is never used [INFO] [stdout] --> src/modules/base/async_feature/simple_async.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | async fn task() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MyBox` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_1_defer_1.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct MyBox(T); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_drop` is never used [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn test_drop() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Address` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Address { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_city` and `add_note` are never used [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 22 | impl Person { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 23 | // 接收 &self,但内部仍然可以修改 [INFO] [stdout] 24 | fn update_city(&self, new_city: &str) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | fn add_note(&self, text: &str) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/examples/code_style.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | pub(crate) struct Person{ [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/modules/examples/code_style.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 5 | impl Person { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 6 | pub(crate) fn new() -> Person { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `f1` is never used [INFO] [stdout] --> src/modules/examples/code_style.rs:15:19 [INFO] [stdout] | [INFO] [stdout] 14 | impl Person{ [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 15 | pub(crate) fn f1(&self){ [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `f2` is never used [INFO] [stdout] --> src/modules/examples/code_style.rs:21:19 [INFO] [stdout] | [INFO] [stdout] 20 | impl Person{ [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 21 | pub(crate) fn f2(&self){ [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Calculator` is never constructed [INFO] [stdout] --> src/modules/examples/fib_calc.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct Calculator<'ctx> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `eval` are never used [INFO] [stdout] --> src/modules/examples/fib_calc.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl<'ctx> Calculator<'ctx> { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(f: F) -> Self [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn eval(&self, input: i64) -> i64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Gender` is never used [INFO] [stdout] --> src/modules/diff/diff_java.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | enum Gender { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/diff/diff_java.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/modules/diff/diff_java.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 32 | impl Person { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 33 | // 构造函数 [INFO] [stdout] 34 | fn new(name: String, gender: Gender) -> Person { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `diff_java_override_to_string` is never used [INFO] [stdout] --> src/modules/diff/diff_java.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn diff_java_override_to_string(name: String,gender: Gender) -> Person { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `two_sum` is never used [INFO] [stdout] --> src/modules/leetcode/_1_two_sum.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn two_sum(nums: Vec, target: i32) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ListNode` is never constructed [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct ListNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl ListNode { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 9 | #[inline] [INFO] [stdout] 10 | 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/modules/leetcode/_2_two_add.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn add_two_numbers( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Logger` is never used [INFO] [stdout] --> src/modules/advance/log/mod.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub trait Logger: Send + Debug { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConsoleLogger` is never constructed [INFO] [stdout] --> src/modules/advance/log/console_logger.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct ConsoleLogger { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FileLogger` is never constructed [INFO] [stdout] --> src/modules/advance/log/file_logger.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct FileLogger { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rust_learn v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `LockResult` [INFO] [stdout] --> src/modules/base/smart_pointer/_3_arc_1.rs:1:22 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, LockResult, Mutex}; [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::sync::Arc` [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/modules/examples/fib_calc.rs:41:46 [INFO] [stdout] | [INFO] [stdout] 41 | use crate::modules::examples::fib_calc::{self, Calculator}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/modules/examples/fib_calc.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | if (n <= 2) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 44 - if (n <= 2) { [INFO] [stdout] 44 + if n <= 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | let a = Person{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/modules/base/cloned.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | let y = x.clone(); // i32 实现了 Copy,所以几乎零成本 [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v2` [INFO] [stdout] --> src/modules/base/cloned.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | let v2: Vec = v.iter().cloned().collect(); // 得到 [1,2,3,4] 的拥有值副本 [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_v2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v3` [INFO] [stdout] --> src/modules/base/cloned.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | let v3: Vec = v.iter().map(|&x| x).collect(); // 因为 i32: Copy,所以 &i32 → i32 自动 copy [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_v3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v4` [INFO] [stdout] --> src/modules/base/cloned.rs:19:13 [INFO] [stdout] | [INFO] [stdout] 19 | let v4: Vec = v.iter().map(|x| x.clone()).collect(); // 也能工作,但啰嗦 [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_v4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `_2_two_add::ListNode` is more private than the item `_2_two_add::add_two_numbers` [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | / pub fn add_two_numbers( [INFO] [stdout] 17 | | l1: Option>, [INFO] [stdout] 18 | | l2: Option>, [INFO] [stdout] 19 | | ) -> Option> { [INFO] [stdout] | |__________________________^ function `_2_two_add::add_two_numbers` is reachable at visibility `pub(in crate::modules::leetcode)` [INFO] [stdout] | [INFO] [stdout] note: but type `_2_two_add::ListNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/modules/leetcode/_2_two_add.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | struct ListNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, `2`, and `3` are never read [INFO] [stdout] --> src/modules/base/tuple.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | struct Matrix(f32, f32, f32, f32); [INFO] [stdout] | ------ ^^^ ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `Matrix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Unit` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | struct Unit; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/modules/base/structure.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Pair(i32, f32); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> src/modules/base/structure.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 17 | x: f32, [INFO] [stdout] | ^ [INFO] [stdout] 18 | y: f32, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `structures_test` is never used [INFO] [stdout] --> src/modules/base/structure.rs:29:4 [INFO] [stdout] | [INFO] [stdout] 29 | fn structures_test() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/modules/base/trait_feature/derive.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | struct Seconds(i32); [INFO] [stdout] | ------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `longest_with_condition` is never used [INFO] [stdout] --> src/modules/base/lifecycle/example_1.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | fn longest_with_condition<'a, 'b>(s1: &'a str, s2: &'b str, threshold: usize) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/modules/base/smart_pointer/_2_drop_1.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 1 | struct Person { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 2 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `country` is never read [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | struct Address { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 8 | city: String, [INFO] [stdout] 9 | country: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Address` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/modules/base/smart_pointer/_5_cell_1.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct Person { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 14 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Person` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/modules/examples/code_style.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub(crate) struct Person{ [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 2 | pub name: String [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Male` and `Other` are never constructed [INFO] [stdout] --> src/modules/diff/diff_java.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | enum Gender { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 9 | Male, [INFO] [stdout] | ^^^^ [INFO] [stdout] 10 | Female, [INFO] [stdout] 11 | Other, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/modules/base/smart_pointer/_3_arc_1.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | handler.join(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 17 | let _ = handler.join(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.73s [INFO] running `Command { std: "docker" "inspect" "1147f605fb6211a89b85940aa6e0dcfb12b8d469d0b57a4c7c3d7aa0ec921cab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1147f605fb6211a89b85940aa6e0dcfb12b8d469d0b57a4c7c3d7aa0ec921cab", kill_on_drop: false }` [INFO] [stdout] 1147f605fb6211a89b85940aa6e0dcfb12b8d469d0b57a4c7c3d7aa0ec921cab [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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+d933cf483edf1605142ac6899ff32536c0ad8b22" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] ac9dd30f80d724becb6c863f032973f4bbf65c3cbf2f64e6b432d9ddb246df72 [INFO] running `Command { std: "docker" "start" "-a" "ac9dd30f80d724becb6c863f032973f4bbf65c3cbf2f64e6b432d9ddb246df72", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `Arc`, `LockResult`, and `Mutex` [INFO] [stderr] --> src/modules/base/smart_pointer/_3_arc_1.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::sync::{Arc, LockResult, Mutex}; [INFO] [stderr] | ^^^ ^^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/modules/base/smart_pointer/_3_arc_1.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `alloc::borrow::Cow` [INFO] [stderr] --> src/modules/base/smart_pointer/_4_cow_1.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use alloc::borrow::Cow; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/modules/base/smart_pointer/_2_drop_1.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | let a = Person{ [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: type `ListNode` is more private than the item `add_two_numbers` [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | / pub fn add_two_numbers( [INFO] [stderr] 17 | | l1: Option>, [INFO] [stderr] 18 | | l2: Option>, [INFO] [stderr] 19 | | ) -> Option> { [INFO] [stderr] | |__________________________^ function `add_two_numbers` is reachable at visibility `pub(in crate::modules::leetcode)` [INFO] [stderr] | [INFO] [stderr] note: but type `ListNode` is only usable at visibility `pub(self)` [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | struct ListNode { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: fields `0`, `1`, `2`, and `3` are never read [INFO] [stderr] --> src/modules/base/tuple.rs:12:15 [INFO] [stderr] | [INFO] [stderr] 12 | struct Matrix(f32, f32, f32, f32); [INFO] [stderr] | ------ ^^^ ^^^ ^^^ ^^^ [INFO] [stderr] | | [INFO] [stderr] | fields in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing these fields [INFO] [stderr] = note: `Matrix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: struct `Person` is never constructed [INFO] [stderr] --> src/modules/base/structure.rs:2:8 [INFO] [stderr] | [INFO] [stderr] 2 | struct Person { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Unit` is never constructed [INFO] [stderr] --> src/modules/base/structure.rs:8:8 [INFO] [stderr] | [INFO] [stderr] 8 | struct Unit; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Pair` is never constructed [INFO] [stderr] --> src/modules/base/structure.rs:12:8 [INFO] [stderr] | [INFO] [stderr] 12 | struct Pair(i32, f32); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `x` and `y` are never read [INFO] [stderr] --> src/modules/base/structure.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 16 | struct Point { [INFO] [stderr] | ----- fields in this struct [INFO] [stderr] 17 | x: f32, [INFO] [stderr] | ^ [INFO] [stderr] 18 | y: f32, [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: function `structures_test` is never used [INFO] [stderr] --> src/modules/base/structure.rs:29:4 [INFO] [stderr] | [INFO] [stderr] 29 | fn structures_test() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Centimeters` is never constructed [INFO] [stderr] --> src/modules/base/trait_feature/derive.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | struct Centimeters(f64); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Inches` is never constructed [INFO] [stderr] --> src/modules/base/trait_feature/derive.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | struct Inches(i32); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `to_centimeters` is never used [INFO] [stderr] --> src/modules/base/trait_feature/derive.rs:10:8 [INFO] [stderr] | [INFO] [stderr] 9 | impl Inches { [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] 10 | fn to_centimeters(&self) -> Centimeters { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Seconds` is never constructed [INFO] [stderr] --> src/modules/base/trait_feature/derive.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | struct Seconds(i32); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `task` is never used [INFO] [stderr] --> src/modules/base/async_feature/simple_async.rs:4:10 [INFO] [stderr] | [INFO] [stderr] 4 | async fn task() { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `MyBox` is never constructed [INFO] [stderr] --> src/modules/base/smart_pointer/_1_defer_1.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | struct MyBox(T); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Person` is never constructed [INFO] [stderr] --> src/modules/base/smart_pointer/_2_drop_1.rs:1:8 [INFO] [stderr] | [INFO] [stderr] 1 | struct Person { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `test_drop` is never used [INFO] [stderr] --> src/modules/base/smart_pointer/_2_drop_1.rs:10:4 [INFO] [stderr] | [INFO] [stderr] 10 | fn test_drop() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Address` is never constructed [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | struct Address { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Person` is never constructed [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:13:8 [INFO] [stderr] | [INFO] [stderr] 13 | struct Person { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `update_city` and `add_note` are never used [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:24:8 [INFO] [stderr] | [INFO] [stderr] 22 | impl Person { [INFO] [stderr] | ----------- methods in this implementation [INFO] [stderr] 23 | // 接收 &self,但内部仍然可以修改 [INFO] [stderr] 24 | fn update_city(&self, new_city: &str) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 32 | fn add_note(&self, text: &str) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Person` is never constructed [INFO] [stderr] --> src/modules/examples/code_style.rs:1:19 [INFO] [stderr] | [INFO] [stderr] 1 | pub(crate) struct Person{ [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/modules/examples/code_style.rs:6:19 [INFO] [stderr] | [INFO] [stderr] 5 | impl Person { [INFO] [stderr] | ----------- associated function in this implementation [INFO] [stderr] 6 | pub(crate) fn new() -> Person { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `f1` is never used [INFO] [stderr] --> src/modules/examples/code_style.rs:15:19 [INFO] [stderr] | [INFO] [stderr] 14 | impl Person{ [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] 15 | pub(crate) fn f1(&self){ [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: method `f2` is never used [INFO] [stderr] --> src/modules/examples/code_style.rs:21:19 [INFO] [stderr] | [INFO] [stderr] 20 | impl Person{ [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] 21 | pub(crate) fn f2(&self){ [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Calculator` is never constructed [INFO] [stderr] --> src/modules/examples/fib_calc.rs:6:8 [INFO] [stderr] | [INFO] [stderr] 6 | struct Calculator<'ctx> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `eval` are never used [INFO] [stderr] --> src/modules/examples/fib_calc.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl<'ctx> Calculator<'ctx> { [INFO] [stderr] | --------------------------- associated items in this implementation [INFO] [stderr] 12 | pub fn new(f: F) -> Self [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 22 | pub fn eval(&self, input: i64) -> i64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Gender` is never used [INFO] [stderr] --> src/modules/diff/diff_java.rs:8:6 [INFO] [stderr] | [INFO] [stderr] 8 | enum Gender { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Person` is never constructed [INFO] [stderr] --> src/modules/diff/diff_java.rs:27:8 [INFO] [stderr] | [INFO] [stderr] 27 | struct Person { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/modules/diff/diff_java.rs:34:8 [INFO] [stderr] | [INFO] [stderr] 32 | impl Person { [INFO] [stderr] | ----------- associated function in this implementation [INFO] [stderr] 33 | // 构造函数 [INFO] [stderr] 34 | fn new(name: String, gender: Gender) -> Person { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function `diff_java_override_to_string` is never used [INFO] [stderr] --> src/modules/diff/diff_java.rs:46:4 [INFO] [stderr] | [INFO] [stderr] 46 | fn diff_java_override_to_string(name: String,gender: Gender) -> Person { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `two_sum` is never used [INFO] [stderr] --> src/modules/leetcode/_1_two_sum.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn two_sum(nums: Vec, target: i32) -> Vec { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ListNode` is never constructed [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | struct ListNode { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:10:12 [INFO] [stderr] | [INFO] [stderr] 8 | impl ListNode { [INFO] [stderr] | ------------- associated function in this implementation [INFO] [stderr] 9 | #[inline] [INFO] [stderr] 10 | pub fn new(val: i32) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function `add_two_numbers` is never used [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:16:8 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn add_two_numbers( [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `Logger` is never used [INFO] [stderr] --> src/modules/advance/log/mod.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | pub trait Logger: Send + Debug { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ConsoleLogger` is never constructed [INFO] [stderr] --> src/modules/advance/log/console_logger.rs:6:12 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct ConsoleLogger { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `FileLogger` is never constructed [INFO] [stderr] --> src/modules/advance/log/file_logger.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct FileLogger { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LockResult` [INFO] [stderr] --> src/modules/base/smart_pointer/_3_arc_1.rs:1:22 [INFO] [stderr] | [INFO] [stderr] 1 | use std::sync::{Arc, LockResult, Mutex}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `self` [INFO] [stderr] --> src/modules/examples/fib_calc.rs:41:46 [INFO] [stderr] | [INFO] [stderr] 41 | use crate::modules::examples::fib_calc::{self, Calculator}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/modules/examples/fib_calc.rs:44:12 [INFO] [stderr] | [INFO] [stderr] 44 | if (n <= 2) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 44 - if (n <= 2) { [INFO] [stderr] 44 + if n <= 2 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/modules/base/cloned.rs:12:13 [INFO] [stderr] | [INFO] [stderr] 12 | let y = x.clone(); // i32 实现了 Copy,所以几乎零成本 [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v2` [INFO] [stderr] --> src/modules/base/cloned.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | let v2: Vec = v.iter().cloned().collect(); // 得到 [1,2,3,4] 的拥有值副本 [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_v2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v3` [INFO] [stderr] --> src/modules/base/cloned.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | let v3: Vec = v.iter().map(|&x| x).collect(); // 因为 i32: Copy,所以 &i32 → i32 自动 copy [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_v3` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v4` [INFO] [stderr] --> src/modules/base/cloned.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | let v4: Vec = v.iter().map(|x| x.clone()).collect(); // 也能工作,但啰嗦 [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_v4` [INFO] [stderr] [INFO] [stderr] warning: type `_2_two_add::ListNode` is more private than the item `_2_two_add::add_two_numbers` [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | / pub fn add_two_numbers( [INFO] [stderr] 17 | | l1: Option>, [INFO] [stderr] 18 | | l2: Option>, [INFO] [stderr] 19 | | ) -> Option> { [INFO] [stderr] | |__________________________^ function `_2_two_add::add_two_numbers` is reachable at visibility `pub(in crate::modules::leetcode)` [INFO] [stderr] | [INFO] [stderr] note: but type `_2_two_add::ListNode` is only usable at visibility `pub(self)` [INFO] [stderr] --> src/modules/leetcode/_2_two_add.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | struct ListNode { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/modules/base/trait_feature/derive.rs:18:16 [INFO] [stderr] | [INFO] [stderr] 18 | struct Seconds(i32); [INFO] [stderr] | ------- ^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `longest_with_condition` is never used [INFO] [stderr] --> src/modules/base/lifecycle/example_1.rs:45:8 [INFO] [stderr] | [INFO] [stderr] 45 | fn longest_with_condition<'a, 'b>(s1: &'a str, s2: &'b str, threshold: usize) -> &'a str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `name` is never read [INFO] [stderr] --> src/modules/base/smart_pointer/_2_drop_1.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 1 | struct Person { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 2 | name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `country` is never read [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 7 | struct Address { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 8 | city: String, [INFO] [stderr] 9 | country: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Address` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `name` is never read [INFO] [stderr] --> src/modules/base/smart_pointer/_5_cell_1.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 13 | struct Person { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 14 | name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Person` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `name` is never read [INFO] [stderr] --> src/modules/examples/code_style.rs:2:9 [INFO] [stderr] | [INFO] [stderr] 1 | pub(crate) struct Person{ [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 2 | pub name: String [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variants `Male` and `Other` are never constructed [INFO] [stderr] --> src/modules/diff/diff_java.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 8 | enum Gender { [INFO] [stderr] | ------ variants in this enum [INFO] [stderr] 9 | Male, [INFO] [stderr] | ^^^^ [INFO] [stderr] 10 | Female, [INFO] [stderr] 11 | Other, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/modules/base/smart_pointer/_3_arc_1.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | handler.join(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 17 | let _ = handler.join(); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `rust_learn` (lib) generated 41 warnings (run `cargo fix --lib -p rust_learn` to apply 6 suggestions) [INFO] [stderr] warning: `rust_learn` (lib test) generated 25 warnings (9 duplicates) (run `cargo fix --lib -p rust_learn --tests` to apply 7 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_learn-d8f1a2cd2a051655) [INFO] [stdout] [INFO] [stdout] running 19 tests [INFO] [stdout] test modules::base::async_feature::semaphore_ep1::tests::t2 ... ok [INFO] [stdout] test modules::base::lifecycle::example_1::tests::t2 ... ok [INFO] [stdout] test modules::base::smart_pointer::_1_defer_1::defer_test_fn_1 ... ok [INFO] [stdout] test modules::base::smart_pointer::_2_drop_1::it_works ... ok [INFO] [stdout] test modules::base::lifecycle::example_1::tests::t1 ... ok [INFO] [stdout] test modules::base::smart_pointer::_3_arc_1::example_1_mut ... ok [INFO] [stdout] test modules::base::trait_feature::derive::tests::t1 ... ok [INFO] [stdout] test modules::base::smart_pointer::_3_arc_1::example_1_un_mut ... ok [INFO] [stdout] test modules::base::smart_pointer::_4_cow_1::cow_test1 ... ok [INFO] [stdout] test modules::base::smart_pointer::_5_cell_1::test_refcell_meaningful ... ok [INFO] [stdout] test modules::diff::diff_java::tests::t1 ... ok [INFO] [stdout] test modules::examples::fib_calc::tests::it_works ... ok [INFO] [stdout] test modules::leetcode::_1_two_sum::test ... ok [INFO] [stdout] test modules::leetcode::_2_two_add::tests::test_add_two_numbers ... ok [INFO] [stdout] test modules::advance::log::tests::test_console_logger_via_box ... ok [INFO] [stdout] test modules::advance::log::tests::test_file_logger_via_box ... ok [INFO] [stdout] test modules::base::cloned::tests::test_cloned ... ok [INFO] [stdout] test modules::examples::code_style::t1 ... ok [INFO] [stdout] test modules::base::async_feature::simple_async::tests::t1 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rust_learn-04629e816d59a52b) [INFO] [stdout] running 0 tests [INFO] [stderr] Running tests/base_tests.rs (/opt/rustwide/target/debug/deps/base_tests-f668086e58439371) [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stderr] Running tests/examples_tests.rs (/opt/rustwide/target/debug/deps/examples_tests-80795e851a4f4e08) [INFO] [stdout] test test_array ... ok [INFO] [stdout] test test_tuple ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] error: test failed, to rerun pass `--test examples_tests` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/target/debug/deps/examples_tests-80795e851a4f4e08` (signal: 9, SIGKILL: kill) [INFO] running `Command { std: "docker" "inspect" "ac9dd30f80d724becb6c863f032973f4bbf65c3cbf2f64e6b432d9ddb246df72", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac9dd30f80d724becb6c863f032973f4bbf65c3cbf2f64e6b432d9ddb246df72", kill_on_drop: false }` [INFO] [stdout] ac9dd30f80d724becb6c863f032973f4bbf65c3cbf2f64e6b432d9ddb246df72