[INFO] cloning repository https://github.com/Trackerming/study-rust-example [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Trackerming/study-rust-example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTrackerming%2Fstudy-rust-example", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTrackerming%2Fstudy-rust-example'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 950fe428ff18d0eb982b61d87be432b638e2cb10 [INFO] checking Trackerming/study-rust-example against master#aa067fb984d36462548bb785da221bfaf38253f0 for pr-122470 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTrackerming%2Fstudy-rust-example" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Trackerming/study-rust-example on toolchain aa067fb984d36462548bb785da221bfaf38253f0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+aa067fb984d36462548bb785da221bfaf38253f0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Trackerming/study-rust-example [INFO] finished tweaking git repo https://github.com/Trackerming/study-rust-example [INFO] tweaked toml for git repo https://github.com/Trackerming/study-rust-example written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Trackerming/study-rust-example 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" "+aa067fb984d36462548bb785da221bfaf38253f0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /workspace/builds/worker-4-tc1/source/study-example/Cargo.toml [INFO] [stderr] workspace: /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] [stderr] warning: /workspace/builds/worker-4-tc1/source/Cargo.toml: unused manifest key: workspace.package.name [INFO] [stderr] warning: /workspace/builds/worker-4-tc1/source/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.linker [INFO] [stderr] warning: /workspace/builds/worker-4-tc1/source/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.rustflags [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded svm-rs v0.3.5 [INFO] [stderr] Downloaded ethers v2.0.13 [INFO] [stderr] Downloaded event-listener v5.1.0 [INFO] [stderr] Downloaded tokio-vsock v0.4.0 [INFO] [stderr] Downloaded vsock v0.3.0 [INFO] [stderr] Downloaded ethers-signers v2.0.13 [INFO] [stderr] Downloaded solang-parser v0.3.3 [INFO] [stderr] Downloaded hello_macro_derive v0.1.0 [INFO] [stderr] Downloaded ruint-macro v1.1.0 [INFO] [stderr] Downloaded ethers-addressbook v2.0.13 [INFO] [stderr] Downloaded alloy-rlp v0.3.4 [INFO] [stderr] Downloaded ethers-contract-derive v2.0.13 [INFO] [stderr] Downloaded const-hex v1.11.0 [INFO] [stderr] Downloaded ethers-contract v2.0.13 [INFO] [stderr] Downloaded bip32 v0.5.1 [INFO] [stderr] Downloaded alloy-primitives v0.4.2 [INFO] [stderr] Downloaded ruint v1.11.1 [INFO] [stderr] Downloaded ethers-core v2.0.13 [INFO] [stderr] Downloaded ethers-solc v2.0.13 [INFO] [stderr] Downloaded bitcoin v0.31.1 [INFO] [stderr] Downloaded c-kzg v0.1.1 [INFO] [stderr] Downloaded ethers-providers v2.0.13 [INFO] [stderr] Downloaded ethers-contract-abigen v2.0.13 [INFO] [stderr] Downloaded ethers-etherscan v2.0.13 [INFO] [stderr] Downloaded ethers-middleware v2.0.13 [INFO] [stderr] Downloaded enr v0.9.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+aa067fb984d36462548bb785da221bfaf38253f0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e4ba024d73a7e87b26d2062f868e80049a9af470953b8c76aeb08748c61f6d1c [INFO] running `Command { std: "docker" "start" "-a" "e4ba024d73a7e87b26d2062f868e80049a9af470953b8c76aeb08748c61f6d1c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e4ba024d73a7e87b26d2062f868e80049a9af470953b8c76aeb08748c61f6d1c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e4ba024d73a7e87b26d2062f868e80049a9af470953b8c76aeb08748c61f6d1c", kill_on_drop: false }` [INFO] [stdout] e4ba024d73a7e87b26d2062f868e80049a9af470953b8c76aeb08748c61f6d1c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+aa067fb984d36462548bb785da221bfaf38253f0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5f7e56a6c7cf2ab5887fbcdd6546804fac6a1b325a875471b9df06c31c0609a9 [INFO] running `Command { std: "docker" "start" "-a" "5f7e56a6c7cf2ab5887fbcdd6546804fac6a1b325a875471b9df06c31c0609a9", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /opt/rustwide/workdir/study-example/Cargo.toml [INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml [INFO] [stderr] warning: /opt/rustwide/workdir/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.linker [INFO] [stderr] warning: /opt/rustwide/workdir/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.rustflags [INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: workspace.package.name [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Checking value-bag v1.7.0 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Compiling hashbrown v0.14.3 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling thiserror v1.0.57 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling indexmap v2.2.3 [INFO] [stderr] Compiling syn v2.0.49 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Checking getrandom v0.2.12 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Checking itoa v1.0.10 [INFO] [stderr] Compiling ahash v0.8.8 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking zerocopy v0.7.32 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking allocator-api2 v0.2.16 [INFO] [stderr] Checking thread_local v1.1.7 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Checking parking v2.2.0 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking concurrent-queue v2.4.0 [INFO] [stderr] Checking mio v0.8.10 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking ryu v1.0.16 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling serde_json v1.0.113 [INFO] [stderr] Checking arrayvec v0.7.4 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Checking event-listener v4.0.3 [INFO] [stderr] Checking subtle v2.5.0 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Checking futures-lite v2.2.0 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking event-listener-strategy v0.4.0 [INFO] [stderr] Checking socket2 v0.5.5 [INFO] [stderr] Checking async-lock v3.3.0 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Checking regex-automata v0.4.5 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Checking async-task v4.7.0 [INFO] [stderr] Checking fastrand v1.9.0 [INFO] [stderr] Checking waker-fn v1.1.1 [INFO] [stderr] Checking tracing-log v0.1.4 [INFO] [stderr] Checking unicode-ident v1.0.12 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking async-executor v1.8.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking unicode-xid v0.2.4 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking crossbeam-channel v0.5.11 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Compiling uuid v1.7.0 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Checking nonmax v0.5.5 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking bevy_ptr v0.12.1 [INFO] [stderr] Checking cpufeatures v0.2.12 [INFO] [stderr] Checking smol_str v0.2.1 [INFO] [stderr] Checking bevy_tasks v0.12.1 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Compiling zeroize v1.7.0 [INFO] [stderr] Checking chrono v0.4.34 [INFO] [stderr] Checking data-encoding v2.5.0 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Compiling rustix v0.38.31 [INFO] [stderr] Compiling prettyplease v0.2.16 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Checking event-listener v5.1.0 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling bitflags v2.4.2 [INFO] [stderr] Compiling linux-raw-sys v0.4.13 [INFO] [stderr] Checking event-listener-strategy v0.5.0 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Checking piper v0.2.1 [INFO] [stderr] Checking async-channel v2.2.0 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling thiserror-impl v1.0.57 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling tokio-macros v2.2.0 [INFO] [stderr] Compiling bytemuck_derive v1.5.0 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [INFO] [stderr] Compiling bevy_utils_proc_macros v0.12.1 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Compiling rlp-derive v0.1.0 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling pin-project-internal v1.1.4 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking bytemuck v1.14.3 [INFO] [stderr] Checking der v0.7.8 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking blocking v1.5.1 [INFO] [stderr] Checking async-lock v2.8.0 [INFO] [stderr] Checking pin-project v1.1.4 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking rustc-hex v2.1.0 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking raw-window-handle v0.5.2 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking spki v0.7.3 [INFO] [stderr] Checking ff v0.13.0 [INFO] [stderr] Checking base16ct v0.2.0 [INFO] [stderr] Checking byte-slice-cast v1.2.2 [INFO] [stderr] Compiling camino v1.1.6 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling semver v1.0.21 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking sec1 v0.7.3 [INFO] [stderr] Checking group v0.13.0 [INFO] [stderr] Checking pkcs8 v0.10.2 [INFO] [stderr] Checking tracing-futures v0.2.5 [INFO] [stderr] Checking crypto-bigint v0.5.5 [INFO] [stderr] Checking codespan-reporting v0.11.1 [INFO] [stderr] Checking smallvec v1.13.1 [INFO] [stderr] Checking bytes v1.5.0 [INFO] [stderr] Checking parking_lot_core v0.9.9 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling toml_datetime v0.6.5 [INFO] [stderr] Checking glam v0.24.2 [INFO] [stderr] Checking tokio v1.36.0 [INFO] [stderr] Compiling toml_edit v0.20.7 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Checking erased-serde v0.3.31 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Checking petgraph v0.6.4 [INFO] [stderr] Compiling toml_edit v0.21.1 [INFO] [stderr] Checking rlp v0.5.2 [INFO] [stderr] Checking pp-rs v0.2.1 [INFO] [stderr] Compiling bevy_macro_utils v0.12.1 [INFO] [stderr] Compiling proc-macro-crate v2.0.0 [INFO] [stderr] Checking bevy_utils v0.12.1 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Checking spirv v0.2.0+1.5.4 [INFO] [stderr] Checking bevy_math v0.12.1 [INFO] [stderr] Checking libloading v0.7.4 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Compiling ash v0.37.3+1.3.251 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Compiling khronos-egl v4.1.0 [INFO] [stderr] Checking hexf-parse v0.2.1 [INFO] [stderr] Compiling parity-scale-codec-derive v3.6.9 [INFO] [stderr] Compiling bevy_reflect_derive v0.12.1 [INFO] [stderr] Compiling bevy_ecs_macros v0.12.1 [INFO] [stderr] Compiling bevy_derive v0.12.1 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Compiling scale-info-derive v2.10.0 [INFO] [stderr] Checking sha3 v0.10.8 [INFO] [stderr] Checking naga v0.13.0 [INFO] [stderr] Compiling proc-macro-crate v3.1.0 [INFO] [stderr] Checking elliptic-curve v0.13.8 [INFO] [stderr] Checking gpu-descriptor-types v0.1.2 [INFO] [stderr] Checking gpu-alloc-types v0.3.0 [INFO] [stderr] Checking rfc6979 v0.4.0 [INFO] [stderr] Checking signature v2.2.0 [INFO] [stderr] Compiling blake3 v1.5.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling async-fs v1.6.0 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking accesskit v0.12.2 [INFO] [stderr] Compiling strum_macros v0.25.3 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Checking parity-scale-codec v3.6.9 [INFO] [stderr] Checking ecdsa v0.16.9 [INFO] [stderr] Checking gpu-alloc v0.6.0 [INFO] [stderr] Compiling num_enum_derive v0.7.2 [INFO] [stderr] Checking gpu-descriptor v0.2.4 [INFO] [stderr] Compiling open-fastrlp-derive v0.1.1 [INFO] [stderr] Checking impl-codec v0.6.0 [INFO] [stderr] Checking bevy_reflect v0.12.1 [INFO] [stderr] Checking scale-info v2.10.0 [INFO] [stderr] Checking impl-rlp v0.3.0 [INFO] [stderr] Checking wgpu-types v0.17.0 [INFO] [stderr] Checking impl-serde v0.4.0 [INFO] [stderr] Checking fixed-hash v0.8.0 [INFO] [stderr] Compiling auto_impl v1.1.2 [INFO] [stderr] Compiling encase_derive_impl v0.6.1 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Checking libloading v0.8.1 [INFO] [stderr] Checking profiling v1.0.15 [INFO] [stderr] Checking arrayref v0.3.7 [INFO] [stderr] Checking renderdoc-sys v1.0.0 [INFO] [stderr] Checking glow v0.12.3 [INFO] [stderr] Checking constant_time_eq v0.3.0 [INFO] [stderr] Compiling thiserror-core v1.0.50 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking k256 v0.13.3 [INFO] [stderr] Compiling bevy_asset_macros v0.12.1 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Checking ron v0.8.1 [INFO] [stderr] Compiling thiserror-core-impl v1.0.50 [INFO] [stderr] Checking uint v0.9.5 [INFO] [stderr] Checking async-broadcast v0.5.1 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.91 [INFO] [stderr] Compiling gcc v0.3.55 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Checking const_soft_float v0.1.4 [INFO] [stderr] Checking primitive-types v0.12.2 [INFO] [stderr] Checking bevy_ecs v0.12.1 [INFO] [stderr] Checking png v0.17.13 [INFO] [stderr] Checking constgebra v0.1.3 [INFO] [stderr] Compiling rust-crypto v0.2.36 [INFO] [stderr] Compiling encase_derive v0.6.1 [INFO] [stderr] Checking ethbloom v0.13.0 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking http v0.2.11 [INFO] [stderr] Checking const-hex v1.11.0 [INFO] [stderr] Checking twox-hash v1.6.3 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Compiling rustls v0.21.10 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Checking regex-syntax v0.7.5 [INFO] [stderr] Checking const_panic v0.2.8 [INFO] [stderr] Checking image v0.24.8 [INFO] [stderr] Checking encase v0.6.1 [INFO] [stderr] Checking ruzstd v0.4.0 [INFO] [stderr] Compiling clang-sys v1.7.0 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking ethereum-types v0.14.1 [INFO] [stderr] Checking nix v0.24.3 [INFO] [stderr] Checking hexasphere v9.1.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling bevy_encase_derive v0.12.1 [INFO] [stderr] Compiling bevy_render_macros v0.12.1 [INFO] [stderr] Checking bevy_mikktspace v0.12.1 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Checking naga_oil v0.10.1 [INFO] [stderr] Checking unicode-normalization v0.1.22 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking ktx2 v0.3.0 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling bumpalo v3.15.0 [INFO] [stderr] Checking rustc-serialize v0.3.25 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Checking deranged v0.3.11 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.91 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Compiling time-macros v0.2.17 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking bevy_app v0.12.1 [INFO] [stderr] Checking wgpu-hal v0.17.2 [INFO] [stderr] Checking bevy_log v0.12.1 [INFO] [stderr] Checking bevy_core v0.12.1 [INFO] [stderr] Checking bevy_input v0.12.1 [INFO] [stderr] Checking bevy_hierarchy v0.12.1 [INFO] [stderr] Checking bevy_a11y v0.12.1 [INFO] [stderr] Checking bevy_time v0.12.1 [INFO] [stderr] Checking bevy_transform v0.12.1 [INFO] [stderr] Checking bevy_asset v0.12.1 [INFO] [stderr] Checking cargo-platform v0.1.7 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Checking unicode-bidi v0.3.15 [INFO] [stderr] Checking bevy_window v0.12.1 [INFO] [stderr] Checking time v0.3.34 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking wgpu-core v0.17.1 [INFO] [stderr] Checking cargo_metadata v0.18.1 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.91 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Checking ethabi v18.0.0 [INFO] [stderr] Checking open-fastrlp v0.1.4 [INFO] [stderr] Checking strum v0.25.0 [INFO] [stderr] Checking num_enum v0.7.2 [INFO] [stderr] Checking tempfile v3.10.0 [INFO] [stderr] Checking tracing-serde v0.1.3 [INFO] [stderr] Checking inout v0.1.3 [INFO] [stderr] Compiling async-stream-impl v0.3.5 [INFO] [stderr] Checking matchers v0.0.1 [INFO] [stderr] Compiling secp256k1-sys v0.8.1 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling bindgen v0.66.1 [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Compiling home v0.5.9 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Compiling wasm-bindgen v0.2.91 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Checking async-stream v0.3.5 [INFO] [stderr] Checking structopt v0.3.26 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking wgpu v0.17.2 [INFO] [stderr] Checking ethers-core v2.0.13 [INFO] [stderr] Checking tracing-subscriber v0.2.25 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.91 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Checking simple_asn1 v0.6.2 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking bevy_render v0.12.1 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking h2 v0.3.24 [INFO] [stderr] Checking tokio-stream v0.1.14 [INFO] [stderr] Compiling blst v0.3.11 [INFO] [stderr] Checking crossbeam-queue v0.3.11 [INFO] [stderr] Checking atoi v0.3.3 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Checking radsort v0.1.0 [INFO] [stderr] Checking anstyle-parse v0.2.3 [INFO] [stderr] Checking mini-redis v0.4.1 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Compiling serde_spanned v0.6.5 [INFO] [stderr] Checking bs58 v0.5.0 [INFO] [stderr] Checking ripemd v0.1.3 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Checking anstyle v1.0.6 [INFO] [stderr] Checking anstyle-query v1.0.2 [INFO] [stderr] Compiling async-trait v0.1.77 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Compiling winnow v0.6.1 [INFO] [stderr] Checking webpki-roots v0.25.4 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Checking anstream v0.6.12 [INFO] [stderr] Checking hyper v0.14.28 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling toml_edit v0.22.6 [INFO] [stderr] Checking js-sys v0.3.68 [INFO] [stderr] Checking secp256k1 v0.27.0 [INFO] [stderr] Checking bevy_core_pipeline v0.12.1 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Checking threadpool v1.8.1 [INFO] [stderr] Checking euclid v0.22.9 [INFO] [stderr] Compiling anyhow v1.0.79 [INFO] [stderr] Checking ttf-parser v0.20.0 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Compiling indenter v0.3.3 [INFO] [stderr] Checking untrusted v0.7.1 [INFO] [stderr] Checking tap v1.0.1 [INFO] [stderr] Checking strsim v0.11.0 [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Checking svg_fmt v0.4.1 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking spin v0.5.2 [INFO] [stderr] Checking coins-core v0.8.7 [INFO] [stderr] Checking guillotiere v0.6.2 [INFO] [stderr] Compiling c-kzg v0.1.1 [INFO] [stderr] Checking reqwest v0.11.24 [INFO] [stderr] Checking clap_builder v4.5.1 [INFO] [stderr] Checking gloo-timers v0.2.6 [INFO] [stderr] Compiling winit v0.28.7 [INFO] [stderr] Checking wyz v0.5.1 [INFO] [stderr] Checking tungstenite v0.20.1 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Checking owned_ttf_parser v0.20.0 [INFO] [stderr] Compiling toml v0.8.10 [INFO] [stderr] Checking redis-simple v0.2.2 (/opt/rustwide/workdir/redis-simple) [INFO] [stderr] Checking salsa20 v0.10.2 [INFO] [stderr] Checking pem v1.1.1 [INFO] [stderr] Checking http v1.0.0 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Checking pbkdf2 v0.12.2 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Compiling clap_derive v4.5.0 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Checking send_wrapper v0.4.0 [INFO] [stderr] Compiling bitcoin-internals v0.2.0 [INFO] [stderr] Checking funty v2.0.0 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Compiling dunce v1.0.4 [INFO] [stderr] Compiling inflections v1.1.1 [INFO] [stderr] Checking rectangle-pack v0.4.2 [INFO] [stderr] Compiling cpal v0.15.2 [INFO] [stderr] Checking bevy_sprite v0.12.1 [INFO] [stderr] Checking bitvec v1.0.1 [INFO] [stderr] Compiling gltf-derive v1.4.0 [INFO] [stderr] Checking ab_glyph v0.2.23 [INFO] [stderr] Checking futures-timer v3.0.2 [INFO] [stderr] Checking inotify v0.10.2 [INFO] [stderr] Checking hashers v1.0.1 [INFO] [stderr] Checking scrypt v0.10.0 [INFO] [stderr] Checking jsonwebtoken v8.3.0 [INFO] [stderr] Checking alsa v0.7.1 [INFO] [stderr] Checking tokio-tungstenite v0.20.1 [INFO] [stderr] Checking coins-bip32 v0.8.7 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking ctr v0.9.2 [INFO] [stderr] Checking enr v0.9.1 [INFO] [stderr] Checking nix v0.27.1 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Checking clap v4.5.1 [INFO] [stderr] Compiling hello_macro_derive v0.1.0 [INFO] [stderr] Checking ogg v0.8.0 [INFO] [stderr] Compiling secp256k1-sys v0.9.2 [INFO] [stderr] Compiling gilrs v0.10.4 [INFO] [stderr] Checking dasp_sample v0.11.0 [INFO] [stderr] Checking xi-unicode v0.3.0 [INFO] [stderr] Checking coins-bip39 v0.8.7 [INFO] [stderr] Checking glyph_brush_layout v0.2.3 [INFO] [stderr] Checking ethers-contract-abigen v2.0.13 [INFO] [stderr] Checking lewton v0.10.2 [INFO] [stderr] Checking gilrs-core v0.5.10 [INFO] [stderr] Checking eth-keystore v0.5.0 [INFO] [stderr] Checking ethers-providers v2.0.13 [INFO] [stderr] Checking gltf-json v1.4.0 [INFO] [stderr] Checking http-body v1.0.0 [INFO] [stderr] Checking bevy_pbr v0.12.1 [INFO] [stderr] Checking grid v0.10.0 [INFO] [stderr] Compiling hex_lit v0.1.1 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Checking hex-conservative v0.1.1 [INFO] [stderr] Checking bitcoin_hashes v0.13.0 [INFO] [stderr] Checking taffy v0.3.18 [INFO] [stderr] Checking gltf v1.4.0 [INFO] [stderr] Checking accesskit_winit v0.15.0 [INFO] [stderr] Checking rodio v0.17.3 [INFO] [stderr] Checking ethers-signers v2.0.13 [INFO] [stderr] Checking study-example v0.2.2 (/opt/rustwide/workdir/study-example) [INFO] [stderr] Checking bevy_text v0.12.1 [INFO] [stderr] Checking h2 v0.4.2 [INFO] [stderr] Checking ethers-etherscan v2.0.13 [INFO] [stdout] warning: unused import: `hash_map` [INFO] [stdout] --> study-example/src/common_collection/hash_map_study.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{hash_map, HashMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MutexGuard` [INFO] [stdout] --> study-example/src/concurrency/dead_lock.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, Mutex, MutexGuard}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> study-example/src/package_crate_module/package_crate_module.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::*` [INFO] [stdout] --> study-example/src/package_crate_module/package_crate_module.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Drop` is imported redundantly [INFO] [stdout] --> study-example/src/smart_pointer/drop_trait.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Drop; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:148:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Drop` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> study-example/src/smart_pointer/refcell_pointer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:12:20 [INFO] [stdout] | [INFO] [stdout] 12 | fn takes_long_type(f: Box) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:20:26 [INFO] [stdout] | [INFO] [stdout] 20 | fn takes_long_type_short(f: Thunk) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | fn generic(t: T) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:43:28 [INFO] [stdout] | [INFO] [stdout] 43 | fn generic_sized(t: T) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:45:31 [INFO] [stdout] | [INFO] [stdout] 45 | fn generic_sized_2(t: &T) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> study-example/src/advance_feature/unsafe_rust.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | let r = address as *const i32; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max64_int` [INFO] [stdout] --> study-example/src/basic_concept/basic_concept.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let max64_int = 2 ^ 64 - 1; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max64_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `x` is never read [INFO] [stdout] --> study-example/src/basic_concept/basic_concept.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | let mut x: u16 = 10000; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `vec1` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut vec1: Vec = Vec::new(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `values` [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | let values: [i32; 3] = [12, 23, 43]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `some_number` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | let some_number = Some(5); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `some_char` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | let some_char = Some('S'); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | let number: i32 = 32; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:119:23 [INFO] [stdout] | [INFO] [stdout] 119 | Coin::ETH(str) => 100_0000_0000_0000_0000, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | Coin::USDT(str) => 100_0000, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num1` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let num1: &i32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_num1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num2` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let num2: &'a i32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_num2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num3` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let num3: &'a mut i32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_num3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | let s: &'static str = "test 'static"; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-example/src/iterator_closure/closure_study.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let s = example_closures(String::from("closures.")); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `post` [INFO] [stdout] --> study-example/src/object_oriented/object_oriented_desgin_pattern.rs:40:27 [INFO] [stdout] | [INFO] [stdout] 40 | fn content<'a>(&self, post: &'a Post) -> &'a str { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_post` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> study-example/src/object_oriented/object_oriented_desgin_pattern.rs:88:14 [INFO] [stdout] | [INFO] [stdout] 88 | Some(state) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-example/src/ownership/ownership.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut s1 = String::from("hello"); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-example/src/ownership/ownership.rs:55:17 [INFO] [stdout] | [INFO] [stdout] 55 | let mut s4 = s3; [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] --> study-example/src/ownership/ownership.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let mut str = String::from("move_function_study hello"); [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] --> study-example/src/ownership/ownership.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | let mut int1 = 188; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str_ref` [INFO] [stdout] --> study-example/src/ownership/ownership.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | fn modify_str(str_ref: &String) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_str_ref` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string_literal` [INFO] [stdout] --> study-example/src/ownership/ownership.rs:223:13 [INFO] [stdout] | [INFO] [stdout] 223 | let string_literal = "hello string literal"; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-example/src/ownership/ownership.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | let mut source_str = String::from("slice hello"); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> study-example/src/smart_pointer/deref_trait.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | let y = &x; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer1` [INFO] [stdout] --> study-example/src/smart_pointer/drop_trait.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let pointer1 = Point { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer2` [INFO] [stdout] --> study-example/src/smart_pointer/drop_trait.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let pointer2 = Point { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> study-example/src/smart_pointer/rc_t_count_pointer.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let b = List::Cons(15, Box::new(a)); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> study-example/src/smart_pointer/rc_t_count_pointer.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | let d = RcList::Cons(21, Rc::clone(&a)); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `color` [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let color = Color(32, 34, 43); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let point = Point(23, -23); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/advance_feature/advanced_function_closures.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | Value(u32), [INFO] [stdout] | ----- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 45 | Value(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Stop` is never constructed [INFO] [stdout] --> study-example/src/advance_feature/advanced_function_closures.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 44 | enum Status { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] 45 | Value(u32), [INFO] [stdout] 46 | Stop, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Status` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `takes_long_type_short` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn takes_long_type_short(f: Thunk) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `never_fn` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn never_fn() -> ! { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn generic(t: T) {} [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic_sized` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn generic_sized(t: T) {} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic_sized_2` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn generic_sized_2(t: &T) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Foo` is never used [INFO] [stdout] --> study-example/src/advance_feature/unsafe_rust.rs:84:14 [INFO] [stdout] | [INFO] [stdout] 84 | unsafe trait Foo { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `decimal` is never read [INFO] [stdout] --> study-example/src/common_collection/hash_map_study.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | struct CoinProerty { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 11 | decimal: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoinProerty` 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 `0` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | Int(i32), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 55 | Int(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | Float(f64), [INFO] [stdout] | ----- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 56 | Float(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | Text(String), [INFO] [stdout] | ---- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 57 | Text(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V6` is never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 3 | enum IpAddrType { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 4 | V4, [INFO] [stdout] 5 | V6, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddrType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ip_addr_type` and `address` are never read [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | struct IpAddr { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 10 | ip_addr_type: IpAddrType, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 11 | address: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddr` 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 `0` is never read [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | V4(String), [INFO] [stdout] | -- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 16 | V4(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V6` is never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 15 | enum IpAddrEnum { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 16 | V4(String), [INFO] [stdout] 17 | V6(String), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddrEnum` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Message` is never used [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | enum Message { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | Write(String), // 包括一个单个的字符串 [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 49 | Write(()), // 包括一个单个的字符串 [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit`, `Move`, and `ChangeColor` are never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | enum Msg { [INFO] [stdout] | --- variants in this enum [INFO] [stdout] 47 | Quit, // 没有数据关联 [INFO] [stdout] | ^^^^ [INFO] [stdout] 48 | Move { x: i32, y: i32 }, // 像struct做的,有命名的字段 [INFO] [stdout] | ^^^^ [INFO] [stdout] 49 | Write(String), // 包括一个单个的字符串 [INFO] [stdout] 50 | ChangeColor(i32, i64, String), // 包括几个类型的数据 [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Msg` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ETH` and `USDT` are never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 108 | enum Coin { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 109 | BTC(String), [INFO] [stdout] 110 | ETH(String), [INFO] [stdout] | ^^^ [INFO] [stdout] 111 | USDT(String), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Coin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_panic_self` is never used [INFO] [stdout] --> study-example/src/error_handle/panic_unrecoverable.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn call_panic_self() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cause_lib_panic` is never used [INFO] [stdout] --> study-example/src/error_handle/panic_unrecoverable.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn cause_lib_panic() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Score` is never constructed [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Score<'a> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_score` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 38 | impl<'a> Score<'a> { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 39 | // [规则3]:因为参数之一是 &self ,所以返回类型获取 &self 的生命周期 [INFO] [stdout] 40 | fn get_score(&self) -> &i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `first_world` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn first_world(str: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> study-example/src/generic_traits_lifetime/traits_study.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Pair { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/traits_study.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Pair { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 8 | fn new(x: T, y: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cmp_display` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/traits_study.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl Pair { [INFO] [stdout] | ------------------------------------- method in this implementation [INFO] [stdout] 13 | fn cmp_display(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_closures_study` is never used [INFO] [stdout] --> study-example/src/iterator_closure/closure_study.rs:64:4 [INFO] [stdout] | [INFO] [stdout] 64 | fn example_closures_study() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `height` is never read [INFO] [stdout] --> study-example/src/iterator_closure/closure_study.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 114 | struct Rectangle { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 115 | width: u32, [INFO] [stdout] 116 | height: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rectangle` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Shoe` is never constructed [INFO] [stdout] --> study-example/src/iterator_closure/iterator_process_study.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | struct Shoe { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shoe_in_size` is never used [INFO] [stdout] --> study-example/src/iterator_closure/iterator_process_study.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | fn shoe_in_size(shoes: Vec, shoe_size: u32) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `options` is never read [INFO] [stdout] --> study-example/src/object_oriented/trait_object_for_diff_type.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SelectBox { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 36 | options: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SelectBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `modify_str` is never used [INFO] [stdout] --> study-example/src/ownership/ownership.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 121 | fn modify_str(str_ref: &String) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Rgb` is never constructed [INFO] [stdout] --> study-example/src/pattern_match/pattern_syntax.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 91 | enum Color { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 92 | Rgb(i32, i32, i32), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit` and `Write` are never constructed [INFO] [stdout] --> study-example/src/pattern_match/pattern_syntax.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 95 | enum Message { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 96 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 97 | Move { x: i32, y: i32 }, [INFO] [stdout] 98 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Message` is never used [INFO] [stdout] --> study-example/src/smart_pointer/box_pointer.rs:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | enum Message { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> study-example/src/smart_pointer/refcell_pointer.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | Cons(Rc>, Rc), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 69 | Cons((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/smart_pointer/reference_cycle.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | Cons(i32, RefCell>), [INFO] [stdout] | ---- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 7 | Cons((), RefCell>), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `value` and `children` are never read [INFO] [stdout] --> study-example/src/smart_pointer/reference_cycle.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 50 | struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 51 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 52 | parent: RefCell>, [INFO] [stdout] 53 | children: RefCell>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `age`, and `active` are never read [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | struct User { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 3 | user_id: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 4 | user_name: String, [INFO] [stdout] 5 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] 6 | active: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `User` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:25:14 [INFO] [stdout] | [INFO] [stdout] 25 | struct Color(i32, i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 25 | struct Color((), (), ()); [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:26:14 [INFO] [stdout] | [INFO] [stdout] 26 | struct Point(i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 26 | struct Point((), ()); [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `coinMap` should have a snake case name [INFO] [stdout] --> study-example/src/common_collection/hash_map_study.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut coinMap: HashMap = HashMap::new(); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `coin_map` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 86 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking bevy_scene v0.12.1 [INFO] [stderr] Checking bevy_animation v0.12.1 [INFO] [stderr] Checking enc_dec v0.2.2 (/opt/rustwide/workdir/crypto/enc_dec) [INFO] [stdout] warning: unused import: `ripemd160` [INFO] [stdout] --> crypto/enc_dec/src/base58.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use crypto::{ripemd160, sha2::Sha256}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> crypto/enc_dec/src/bech32.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/enc_dec/src/bech32.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | let mut u5_bytes: Vec = data_bytes [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `r_len` is never read [INFO] [stdout] --> crypto/enc_dec/src/der.rs:44:17 [INFO] [stdout] | [INFO] [stdout] 44 | let mut r_len = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s_len` is never read [INFO] [stdout] --> crypto/enc_dec/src/der.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | let mut s_len = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/enc_dec/src/endian_big_little.rs:36:28 [INFO] [stdout] | [INFO] [stdout] 36 | let (mut quotient, mut remainder) = self.div_rem(&radix); [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] --> crypto/enc_dec/src/endian_big_little.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | let (quot, mut remainder) = quotient.div_rem(&radix); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DecodeResult` is more private than the item `rlp::decode` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:75:1 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn decode(mut cursor: &mut Cursor<&[u8]>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `rlp::decode` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `DecodeResult` is only usable at visibility `pub(self)` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:69:1 [INFO] [stdout] | [INFO] [stdout] 69 | enum DecodeResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DecodeResult` is more private than the item `decoder` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:155:1 [INFO] [stdout] | [INFO] [stdout] 155 | pub fn decoder(data: &[u8]) -> Result, &'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `decoder` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `DecodeResult` is only usable at visibility `pub(self)` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:69:1 [INFO] [stdout] | [INFO] [stdout] 69 | enum DecodeResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_u5` is never used [INFO] [stdout] --> crypto/enc_dec/src/bech32.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn encode_u5(input: u8) -> char { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Signature` is never constructed [INFO] [stdout] --> crypto/enc_dec/src/der.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Signature { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `encode_der` and `decode_der` are never used [INFO] [stdout] --> crypto/enc_dec/src/der.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Signature { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 10 | pub fn encode_der(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn decode_der(der_bytes: &[u8]) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_big_endian` and `to_little_endian` are never used [INFO] [stdout] --> crypto/enc_dec/src/endian_big_little.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait Endian { [INFO] [stdout] | ------ methods in this trait [INFO] [stdout] 12 | fn to_big_endian(&self) -> String; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 13 | fn to_little_endian(&self) -> String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RLP` is never constructed [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct RLP {} [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `encode_length`, `encode_item`, and `encode_list` are never used [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl RLP { [INFO] [stdout] | -------- associated functions in this implementation [INFO] [stdout] 27 | pub fn encode_length(len: usize, offset: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn encode_item(input: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn encode_list(input: Vec>) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DecodeResult` is never used [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:69:6 [INFO] [stdout] | [INFO] [stdout] 69 | enum DecodeResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode` is never used [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn decode(mut cursor: &mut Cursor<&[u8]>) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bytes_to_usize` is never used [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:146:8 [INFO] [stdout] | [INFO] [stdout] 146 | pub fn bytes_to_usize(data: &[u8]) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decoder` is never used [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:155:8 [INFO] [stdout] | [INFO] [stdout] 155 | pub fn decoder(data: &[u8]) -> Result, &'static str> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `SszValue` is never used [INFO] [stdout] --> crypto/enc_dec/src/ssz.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum SszValue { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_ssz` is never used [INFO] [stdout] --> crypto/enc_dec/src/ssz.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn encode_ssz(value: &SszValue) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | if first_byte <= 0xff { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 22 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking futures-locks v0.7.1 [INFO] [stderr] Checking sysinfo v0.29.11 [INFO] [stderr] Compiling polling v2.8.0 [INFO] [stderr] Compiling bitcoin v0.31.1 [INFO] [stderr] Checking tower-layer v0.3.2 [INFO] [stderr] Compiling rustix v0.37.27 [INFO] [stderr] Checking crypto_util v0.2.2 (/opt/rustwide/workdir/crypto/crypto_util) [INFO] [stderr] Checking os_str_bytes v6.6.1 [INFO] [stderr] Checking bevy_diagnostic v0.12.1 [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> crypto/crypto_util/src/base_compute.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | while xy.0 < 0 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> crypto/crypto_util/src/point.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | if lambda < 0 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking tower v0.4.13 [INFO] [stderr] Checking clap_lex v0.2.4 [INFO] [stderr] Checking bevy_ui v0.12.1 [INFO] [stderr] Compiling ethers-contract-derive v2.0.13 [INFO] [stderr] Checking bevy_gilrs v0.12.1 [INFO] [stderr] Checking bevy_audio v0.12.1 [INFO] [stderr] Checking secp256k1 v0.28.2 [INFO] [stderr] Checking bevy_winit v0.12.1 [INFO] [stderr] Checking ethers-addressbook v2.0.13 [INFO] [stderr] Checking vsock v0.3.0 [INFO] [stderr] Checking polling v3.5.0 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Compiling async-io v1.13.0 [INFO] [stderr] Checking bevy_gltf v0.12.1 [INFO] [stderr] Checking bevy_gizmos v0.12.1 [INFO] [stderr] Checking linux-raw-sys v0.3.8 [INFO] [stderr] Checking bech32 v0.10.0-beta [INFO] [stderr] Checking textwrap v0.16.1 [INFO] [stderr] Checking strsim v0.10.0 [INFO] [stderr] Checking bitcoin_hashes v0.11.0 [INFO] [stderr] Checking clap v3.2.25 [INFO] [stderr] Checking async-io v2.3.1 [INFO] [stderr] Checking hyper v1.1.0 [INFO] [stderr] Checking bip39 v2.0.0 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking tokio-vsock v0.4.0 [INFO] [stderr] Checking http-body-util v0.1.0 [INFO] [stderr] Checking bip32 v0.5.1 [INFO] [stderr] Checking algorithms-utils v0.2.2 (/opt/rustwide/workdir/algorithms/algorithms-utils) [INFO] [stderr] Checking nix v0.20.0 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Compiling ruint-macro v1.1.0 [INFO] [stderr] Checking async-global-executor v2.4.1 [INFO] [stderr] Checking hyper-util v0.1.3 [INFO] [stderr] Compiling async-attributes v1.1.2 [INFO] [stderr] Checking bevy_internal v0.12.1 [INFO] [stderr] Checking ruint v1.11.1 [INFO] [stderr] Checking pem v3.0.3 [INFO] [stderr] Checking bevy_dylib v0.12.1 [INFO] [stderr] Checking kv-log-macro v1.0.7 [INFO] [stderr] Checking hex-literal v0.4.1 [INFO] [stderr] Checking jsonwebtoken v9.2.0 [INFO] [stderr] Checking bevy v0.12.1 [INFO] [stderr] Checking algorithms v0.2.2 (/opt/rustwide/workdir/algorithms) [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> algorithms/src/repeat_of_array.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algorithms_utils::tree` [INFO] [stdout] --> algorithms/src/tree_iterator.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use algorithms_utils::tree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algorithms_utils::tree::TreeLink` [INFO] [stdout] --> algorithms/src/tree_iterator.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use algorithms_utils::tree::TreeLink; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking alloy-primitives v0.4.2 [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> algorithms/src/array_sort.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | for mut i in 0..array.len() { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> algorithms/src/array_sort.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | for mut j in 0..(array.len() - i - 1) { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> algorithms/src/tree_iterator.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut result = RefCell::new(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] --> algorithms/src/tree_iterator.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let mut result = RefCell::new(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] --> algorithms/src/tree_iterator.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let mut result = RefCell::new(vec![]); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> algorithms/src/fibonacci_list.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | for i in 2..n + 1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Solution` is never constructed [INFO] [stdout] --> algorithms/src/binary_search_tree_from_preorder_traversal.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Solution; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Postorder` is never used [INFO] [stdout] --> algorithms/src/binary_search_tree_from_preorder_traversal.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | trait Postorder { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `bst_from_preorder` is never used [INFO] [stdout] --> algorithms/src/binary_search_tree_from_preorder_traversal.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Solution { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 34 | fn bst_from_preorder(preorder: Vec) -> TreeLink { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `link_list_iterator` is never used [INFO] [stdout] --> algorithms/src/link_list_iterator.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn link_list_iterator(list: Link) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> algorithms/src/array_2d_search.rs:21:23 [INFO] [stdout] | [INFO] [stdout] 21 | while r < rows && c >= 0 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking socket-relay v0.2.2 (/opt/rustwide/workdir/socket-relay) [INFO] [stderr] Checking async-std v1.12.0 [INFO] [stderr] Checking ecc_simple_demo v0.2.2 (/opt/rustwide/workdir/crypto/ecc_simple_demo) [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fmt::{Display, Error}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | for i in 0..shard_num { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecc.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const A: usize = 1; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `concat_point` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Ecdsa { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 55 | fn concat_point(&self, a: Point, b: Point) -> Point { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Eddsa` is never constructed [INFO] [stdout] --> crypto/ecc_simple_demo/src/eddsa.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Eddsa { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `get_lower_high_bit`, `sha256_mock`, `new`, `generate_key_pair`, `sign`, and `verify_sig` are never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/eddsa.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl Eddsa { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 10 | // 返回低位和高位 [INFO] [stdout] 11 | fn get_lower_high_bit(d: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 16 | fn sha256_mock(&self, r: &Point, q: &Point, msg: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn new(g: Point, a: usize, b: usize, mod_value: usize, n: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn generate_key_pair(&self) -> (usize, Point) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn sign(&self, private_key: usize, msg: usize) -> (Point, usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn verify_sig(&self, msg: usize, sig: (Point, usize), public_key_point: Point) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VERSION_BYTES_MAINNET_PUBLIC` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const VERSION_BYTES_MAINNET_PUBLIC: [u8; 4] = [0x04, 0x88, 0xB2, 0x1E]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VERSION_BYTES_MAINNET_PRIVATE` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const VERSION_BYTES_MAINNET_PRIVATE: [u8; 4] = [0x04, 0x88, 0xAD, 0xE4]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hmac_sha512` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn hmac_sha512(key: &[u8], data: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HDPrivKey` is never constructed [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct HDPrivKey { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HDPrivKey` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl HDPrivKey { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 45 | pub fn from_str(extend_key: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HDPubKey` is never constructed [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct HDPubKey { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HDPubKey` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 81 | impl HDPubKey { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 82 | pub fn from_str(extend_key: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/bls.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | let G = g_point; [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecc.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub G: Point, [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecc.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | let G = g; [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | let G = g; [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> crypto/ecc_simple_demo/src/lib.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | #[warn(non_snake_case)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking study-practice v0.2.2 (/opt/rustwide/workdir/study-practice) [INFO] [stderr] Checking web-server v0.2.2 (/opt/rustwide/workdir/web-server) [INFO] [stdout] warning: the item `TryFrom` is imported redundantly [INFO] [stdout] --> study-practice/src/advance_rust/new_type.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:148:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `TryFrom` is already defined here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> study-practice/src/error_result/result_handle.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> study-practice/src/loop_practice.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | 'inner2: loop { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> study-practice/src/string_practice/string_type.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process::Output` [INFO] [stdout] --> study-practice/src/traits/advance_trait.rs:186:5 [INFO] [stdout] | [INFO] [stdout] 186 | use std::process::Output; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> study-practice/src/async_await/basic_usage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> study-practice/src/async_await/basic_usage.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Future` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:8:25 [INFO] [stdout] | [INFO] [stdout] 8 | use std::future::{join, Future}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ethers-contract v2.0.13 [INFO] [stderr] Checking crypto_small_math v0.2.2 (/opt/rustwide/workdir/crypto/crypto_small_math) [INFO] [stdout] warning: the feature `async_fn_in_trait` has been stable since 1.75.0 and no longer requires an attribute to enable [INFO] [stdout] --> study-practice/src/lib.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(async_fn_in_trait)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> crypto/crypto_small_math/src/prime_group.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 78 | impl MulPrimeGroup { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 79 | fn new(mod_num: i8, e: i8, g: i8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking minigrep v0.2.2 (/opt/rustwide/workdir/minigrep) [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:49:28 [INFO] [stdout] | [INFO] [stdout] 49 | task3_fut.map_err(|err| "task1 error".to_string()), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | task1_fut.map_err(|err| "task3 error".to_string()) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking utxo_wallet v0.2.2 (/opt/rustwide/workdir/crypto/utxo_wallet) [INFO] [stdout] warning: unused import: `NetworkUnchecked` [INFO] [stdout] --> crypto/utxo_wallet/src/wallet.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use bitcoin::address::{Address, NetworkUnchecked}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ChildNumber` [INFO] [stdout] --> crypto/utxo_wallet/src/wallet.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use bitcoin::bip32::{ChildNumber, DerivationPath, Xpriv, Xpub}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> crypto/utxo_wallet/src/wallet.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NetworkUnchecked` [INFO] [stdout] --> crypto/utxo_wallet/src/wallet.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use bitcoin::address::{Address, NetworkUnchecked}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ChildNumber` [INFO] [stdout] --> crypto/utxo_wallet/src/wallet.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use bitcoin::bip32::{ChildNumber, DerivationPath, Xpriv, Xpub}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> crypto/utxo_wallet/src/wallet.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> crypto/utxo_wallet/src/transaction.rs:123:21 [INFO] [stdout] | [INFO] [stdout] 123 | for (index, input) in self.inputs.iter().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/utxo_wallet/src/transaction.rs:124:17 [INFO] [stdout] | [INFO] [stdout] 124 | let mut sighasher = SighashCache::new(&mut tx); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> crypto/utxo_wallet/src/transaction.rs:123:21 [INFO] [stdout] | [INFO] [stdout] 123 | for (index, input) in self.inputs.iter().enumerate() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/utxo_wallet/src/transaction.rs:124:17 [INFO] [stdout] | [INFO] [stdout] 124 | let mut sighasher = SighashCache::new(&mut tx); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking crypto v0.2.2 (/opt/rustwide/workdir/crypto) [INFO] [stdout] warning: unused import: `Thread` [INFO] [stdout] --> web-server/src/main.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | thread::{self, Thread}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Thread` [INFO] [stdout] --> web-server/src/main.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | thread::{self, Thread}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_connection` is never used [INFO] [stdout] --> web-server/src/main.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn handle_connection(mut stream: TcpStream) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_connection` is never used [INFO] [stdout] --> web-server/src/main.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn handle_connection(mut stream: TcpStream) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking jwt_demo v0.2.2 (/opt/rustwide/workdir/crypto/jwt_demo) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut static_string: &'static str; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str_val` [INFO] [stdout] --> study-practice/src/advance_rust/smart_pointer.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | fn foo(str_val: &str) {} [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_str_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `foo_container` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let foo_container = foo.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_foo_container` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bar_container` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | let bar_container = bar.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bar_container` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c1` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let c1: char = decimal as u8 as char; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_c1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c2` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let c2 = integer as char; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_c2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | let v = 1000 as u8; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i3` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | let i3: u32 = 'a'.into(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_i3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i4` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 161 | let i4: i32 = 'a' as i32; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_i4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | let s: String = 'a'.into(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arr0` [INFO] [stdout] --> study-practice/src/array_practice.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | let arr0 = [1, 2, 3]; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_arr0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name0` [INFO] [stdout] --> study-practice/src/array_practice.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | let name0 = names.get(0).unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_name0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/borrow_reference.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut s = String::from("hello, "); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | fn borrow_object(s: &String) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/borrow_reference.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let mut s = String::from("hello"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:128:22 [INFO] [stdout] | [INFO] [stdout] 128 | fn borrow_object_mut(s: &mut String) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:139:20 [INFO] [stdout] | [INFO] [stdout] 139 | fn borrow_object_9(s: &String) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r1` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | let r1 = &mut s; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r2` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | let r2 = &mut s; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_r2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/collection/vec_practice.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | fn is_vec(v: &Vec) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking zero_knowledge v0.2.2 (/opt/rustwide/workdir/crypto/zero_knowledge) [INFO] [stdout] warning: unused variable: `msg1` [INFO] [stdout] --> study-practice/src/enum_practice.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let msg1 = Message::Move { x: 1, y: 2 }; // 使用x = 1, y = 2 来初始化 [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_msg1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg2` [INFO] [stdout] --> study-practice/src/enum_practice.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let msg2 = Message::Write("hello, world!".to_string()); // 使用 "hello, world!" 来初始化 [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_msg2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `none` [INFO] [stdout] --> study-practice/src/enum_practice.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | let none = plus_one(None); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_none` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ele` [INFO] [stdout] --> study-practice/src/error_result/panic.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let ele = v[2]; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ele` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ele` [INFO] [stdout] --> study-practice/src/error_result/panic.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let ele = v.get(2).expect("array get ele failed."); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ele` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/error_result/panic.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let v = production_rate_per_hour(2); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> study-practice/src/error_result/result_handle.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut s = String::new(); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> study-practice/src/generic.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let integer = Point { x: 5, y: 10 }; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> study-practice/src/generic.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let float = Point { x: 1.0, y: 4.0 }; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> study-practice/src/generic.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let p = Point { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arrays` [INFO] [stdout] --> study-practice/src/generic.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | let arrays = [ [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrays` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> study-practice/src/loop_practice.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | for name in &names { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> study-practice/src/loop_practice.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | for n in numbers { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> study-practice/src/loop_practice.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | for i in 0..=100 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> study-practice/src/loop_practice.rs:182:9 [INFO] [stdout] | [INFO] [stdout] 182 | for i in 0..=100 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> study-practice/src/match_practice.rs:77:30 [INFO] [stdout] | [INFO] [stdout] 77 | assert!(matches!(ab, char)) [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Claims` is more private than the item `hs512_ser_encode` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn hs512_ser_encode(claims: &Claims, key: &[u8]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `hs512_ser_encode` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `Claims` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | struct Claims { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Claims` is more private than the item `hs512_deser_decode` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:92:1 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn hs512_deser_decode(token: String, key: &[u8]) -> (Header, Claims) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `hs512_deser_decode` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `Claims` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | struct Claims { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> study-practice/src/match_practice.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | if let Foo::Bar(i) = a { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Claims` is more private than the item `hs512_ser_encode` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn hs512_ser_encode(claims: &Claims, key: &[u8]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `hs512_ser_encode` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `Claims` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | struct Claims { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `others` [INFO] [stdout] --> study-practice/src/match_practice.rs:135:9 [INFO] [stdout] | [INFO] [stdout] 135 | others => println!("match others"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_others` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Claims` is more private than the item `hs512_deser_decode` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:92:1 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn hs512_deser_decode(token: String, key: &[u8]) -> (Header, Claims) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `hs512_deser_decode` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `Claims` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crypto/jwt_demo/src/lib.rs:73:1 [INFO] [stdout] | [INFO] [stdout] 73 | struct Claims { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s1` [INFO] [stdout] --> study-practice/src/string_practice/slice.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let s1: &[i32] = &arr[0..2]; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s2` [INFO] [stdout] --> study-practice/src/string_practice/slice.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let s2: &str = "hello, world" as &str; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/string_practice/string.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let s: &str = "hello, world"; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s1` [INFO] [stdout] --> study-practice/src/string_practice/string.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let s1: &str = s.as_str(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/string_practice/string_type.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let mut s = String::from("hello, world"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> study-practice/src/string_practice/string_type.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 130 | let mut s = String::new(); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> study-practice/src/struct_practice.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let p = Person1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> study-practice/src/struct_practice.rs:38:27 [INFO] [stdout] | [INFO] [stdout] 38 | fn do_something_with_unit(u: Unit) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/struct_practice.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let v = Point(32, 24, 98); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u2` [INFO] [stdout] --> study-practice/src/struct_practice.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | let u2 = set_email(u1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_u2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> crypto/zero_knowledge/src/lib.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-practice/src/tuple.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let t: (u8, u16, i64, &str, String) = (1u8, 2u16, 3i64, "hello", String::from(", world")); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking games v0.2.2 (/opt/rustwide/workdir/games) [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:181:40 [INFO] [stdout] | [INFO] [stdout] 181 | let _ = task1().await.map_err(|err| "err1".to_string()); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:182:40 [INFO] [stdout] | [INFO] [stdout] 182 | let _ = task2().await.map_err(|err| "err2".to_string()); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> study-practice/src/concurrency/sync_lock_condvar.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | for i in 0..8 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inner_thread` [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let inner_thread = thread::spawn(|| loop { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inner_thread` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let mut val: RefCell = RefCell::new(0); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bench_for_iter` is never used [INFO] [stdout] --> study-practice/src/advance_rust/iterator.rs:80:4 [INFO] [stdout] | [INFO] [stdout] 80 | fn bench_for_iter(x: &[f64]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bench_iterator` is never used [INFO] [stdout] --> study-practice/src/advance_rust/iterator.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn bench_iterator(x: &[f64]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `a` and `b` are never read [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | struct Config { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 15 | a: String, [INFO] [stdout] | ^ [INFO] [stdout] 16 | b: String, [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] [INFO] [stdout] [INFO] [stdout] warning: function `print_it1` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn print_it1(input: impl Debug + 'static) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_c` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:113:4 [INFO] [stdout] | [INFO] [stdout] 113 | fn print_c(t: &'static dyn Display) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_d` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn print_d(t: &'static impl Display) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_g` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn print_g(t: &'static String) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enum_convert_match` is never used [INFO] [stdout] --> study-practice/src/advance_rust/new_type.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn enum_convert_match() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/advance_rust/pointer_ref_loop.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | Cons(i32, RefCell>), [INFO] [stdout] | ---- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 7 | Cons((), RefCell>), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `value` and `child` are never read [INFO] [stdout] --> study-practice/src/advance_rust/pointer_ref_loop.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 87 | struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 88 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 89 | parent: RefCell>, [INFO] [stdout] 90 | child: RefCell>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> study-practice/src/advance_rust/smart_pointer.rs:30:10 [INFO] [stdout] | [INFO] [stdout] 30 | Cons(i32, Box), [INFO] [stdout] | ---- ^^^ ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 30 | Cons((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Container` is never constructed [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | struct Container(Arc); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clone_containers` is never used [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn clone_containers(foo: &Container, bar: &Container) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:195:13 [INFO] [stdout] | [INFO] [stdout] 195 | IoError(io::Error), [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 195 | IoError(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:196:16 [INFO] [stdout] | [INFO] [stdout] 196 | ParseError(num::ParseIntError), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 196 | ParseError(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `open_and_parse_file` is never used [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:210:4 [INFO] [stdout] | [INFO] [stdout] 210 | fn open_and_parse_file(file_name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unimplement` is never used [INFO] [stdout] --> study-practice/src/borrow_reference.rs:180:4 [INFO] [stdout] | [INFO] [stdout] 180 | fn unimplement() -> ! { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Zero` and `Two` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | enum Number { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 3 | Zero, [INFO] [stdout] | ^^^^ [INFO] [stdout] 4 | One, [INFO] [stdout] 5 | Two, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Zero` and `Two` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | enum Number1 { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 8 | Zero = 0, [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | One, [INFO] [stdout] 10 | Two, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Zero` and `Two` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum Number2 { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 14 | Zero = 0, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | One = 1, [INFO] [stdout] 16 | Two = 2, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | Move { x: i32, y: i32 }, [INFO] [stdout] | ---- ^ ^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | Write(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 33 | Write(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit` and `ChangeColor` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 30 | enum Message { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 31 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit`, `Write`, and `ChangeColor` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 47 | enum Message3 { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 48 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 49 | Move { x: i32, y: i32 }, [INFO] [stdout] 50 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 51 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 69 | Move { x: i32, y: i32 }, [INFO] [stdout] | ---- ^ ^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:71:17 [INFO] [stdout] | [INFO] [stdout] 71 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ----------- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 71 | ChangeColor((), (), ()), [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Write` is never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 67 | enum Message4 { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 70 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Message4` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `drink` is never used [INFO] [stdout] --> study-practice/src/error_result/panic.rs:4:4 [INFO] [stdout] | [INFO] [stdout] 4 | fn drink(beverage: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `method_1` is never used [INFO] [stdout] --> study-practice/src/error_result/panic.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn method_1() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> study-practice/src/generic.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 66 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 67 | x: T, [INFO] [stdout] | ^ [INFO] [stdout] 68 | y: U, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data` is never read [INFO] [stdout] --> study-practice/src/generic.rs:153:5 [INFO] [stdout] | [INFO] [stdout] 152 | struct Array { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 153 | data: [T; N], [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `East`, `West`, and `North` are never constructed [INFO] [stdout] --> study-practice/src/match_practice.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | enum Direction { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 5 | East, [INFO] [stdout] | ^^^^ [INFO] [stdout] 6 | West, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | North, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/match_practice.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ----------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 42 | ChangeColor((), i32, i32), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Write` is never constructed [INFO] [stdout] --> study-practice/src/match_practice.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 38 | enum Message { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 41 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/match_practice.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | Qux(u32), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 125 | Qux(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Bar` and `Baz` are never constructed [INFO] [stdout] --> study-practice/src/match_practice.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 122 | enum Foo8 { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 123 | Bar, [INFO] [stdout] | ^^^ [INFO] [stdout] 124 | Baz, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrafficLight3` is never constructed [INFO] [stdout] --> study-practice/src/method.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | struct TrafficLight3 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `show_state` and `change_state` are never used [INFO] [stdout] --> study-practice/src/method.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl TrafficLight3 { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 45 | // 使用 `Self` 填空 [INFO] [stdout] 46 | pub fn show_state(self: &Self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn change_state(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rectangle5` is never constructed [INFO] [stdout] --> study-practice/src/method.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct Rectangle5 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `area` is never used [INFO] [stdout] --> study-practice/src/method.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 88 | impl Rectangle5 { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 89 | fn area(&self) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `can_hold` is never used [INFO] [stdout] --> study-practice/src/method.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 93 | impl Rectangle5 { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 94 | fn can_hold(&self, other: &Rectangle) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Red` and `Green` are never constructed [INFO] [stdout] --> study-practice/src/method.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | enum TrafficLightColor6 { [INFO] [stdout] | ------------------ variants in this enum [INFO] [stdout] 103 | Red, [INFO] [stdout] | ^^^ [INFO] [stdout] 104 | Yellow, [INFO] [stdout] 105 | Green, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrafficLightColor6` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `method_2` is never used [INFO] [stdout] --> study-practice/src/string_practice/slice.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn method_2() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `age`, and `hobby` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | struct Person1 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 3 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 4 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] 5 | hobby: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SomeTrait` is never used [INFO] [stdout] --> study-practice/src/struct_practice.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | trait SomeTrait { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:43:14 [INFO] [stdout] | [INFO] [stdout] 43 | struct Point(i32, i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 43 | struct Point((), (), ()); [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `age` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 99 | struct Person5 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 100 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 101 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `active`, `username`, `email`, and `sign_in_count` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 118 | struct User { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 119 | active: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 120 | username: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 121 | email: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 122 | sign_in_count: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `width` and `height` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 151 | struct Rectangle { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 152 | width: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 153 | height: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rectangle` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `summarize` is never used [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 120 | trait Summary { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] 121 | fn summarize(&self) -> String; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title`, `author`, and `content` are never read [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 124 | struct Post { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 125 | title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 126 | author: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 127 | content: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Post` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `username` and `content` are never read [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 135 | struct Weibo { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 136 | username: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 137 | content: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Weibo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:210:8 [INFO] [stdout] | [INFO] [stdout] 209 | impl Pair { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 210 | fn new(x: T, y: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `fly` is never used [INFO] [stdout] --> study-practice/src/traits/trait_object.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Swan { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 12 | fn fly(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `fly` is never used [INFO] [stdout] --> study-practice/src/traits/trait_object.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 59 | impl Duck2 { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 60 | fn fly(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `fly` is never used [INFO] [stdout] --> study-practice/src/traits/trait_object.rs:66:8 [INFO] [stdout] | [INFO] [stdout] 65 | impl Swan2 { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 66 | fn fly(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example` is never used [INFO] [stdout] --> study-practice/src/var_ownership.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn example() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Executor` is never constructed [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | struct Executor { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `future` is never read [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 60 | struct Task { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 61 | future: Mutex>>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Spawner` is never constructed [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | struct Spawner { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_executor_and_spawner` is never used [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn new_executor_and_spawner() -> (Executor, Spawner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `spawn` is never used [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl Spawner { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 76 | fn spawn(&self, future: impl Future + 'static + Send) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `run` is never used [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 93 | impl Executor { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 94 | fn run(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `value` are never read [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct Task { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 14 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | value: T, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Task` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_two_stream` is never used [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:94:10 [INFO] [stdout] | [INFO] [stdout] 94 | async fn add_two_stream( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:132:27 [INFO] [stdout] | [INFO] [stdout] 132 | struct NotSendTraitStruct(Rc<()>); [INFO] [stdout] | ------------------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 132 | struct NotSendTraitStruct(()); [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursive` is never used [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:149:4 [INFO] [stdout] | [INFO] [stdout] 149 | fn recursive() -> BoxFuture<'static, ()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TestAsync` is never used [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:172:7 [INFO] [stdout] | [INFO] [stdout] 172 | trait TestAsync { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_for_receive` is never used [INFO] [stdout] --> study-practice/src/concurrency/channel_message_passing.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn example_for_receive() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_multi_sender` is never used [INFO] [stdout] --> study-practice/src/concurrency/channel_message_passing.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn example_multi_sender() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/concurrency/send_sync_trait.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | struct SendBox(*mut u8); [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `SendBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 5 | struct SendBox(()); [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/concurrency/send_sync_trait.rs:20:16 [INFO] [stdout] | [INFO] [stdout] 20 | struct SyncBox(*const u8); [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `SyncBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 20 | struct SyncBox(()); [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_basic_create` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn example_basic_create() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_block` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn example_block() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> algorithms/src/repeat_of_array.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `thread_barrier` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn thread_barrier() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `algorithms_utils::tree` [INFO] [stdout] --> algorithms/src/tree_iterator.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use algorithms_utils::tree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `thread_local_example` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn thread_local_example() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `condition_var_example` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn condition_var_example() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `config` should have an upper case name [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | static mut config: Option<&mut Config> = None; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper case: `CONFIG` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:59:28 [INFO] [stdout] | [INFO] [stdout] 59 | let bar_container = bar.clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the type `type_deep::Container` does not implement `Clone`, so calling `clone` on `&type_deep::Container` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] 59 - let bar_container = bar.clone(); [INFO] [stdout] 59 + let bar_container = bar; [INFO] [stdout] | [INFO] [stdout] help: if you meant to clone `type_deep::Container`, implement `Clone` for it [INFO] [stdout] | [INFO] [stdout] 56 + #[derive(Clone)] [INFO] [stdout] 57 | struct Container(Arc); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> algorithms/src/array_sort.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | for mut i in 0..array.len() { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> algorithms/src/array_sort.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | for mut j in 0..(array.len() - i - 1) { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 144 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> algorithms/src/tree_iterator.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut result = RefCell::new(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] --> algorithms/src/tree_iterator.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let mut result = RefCell::new(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] --> algorithms/src/tree_iterator.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let mut result = RefCell::new(vec![]); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> algorithms/src/fibonacci_list.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | for i in 2..n + 1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> algorithms/src/array_2d_search.rs:21:23 [INFO] [stdout] | [INFO] [stdout] 21 | while r < rows && c >= 0 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking rsa_simple_demo v0.2.2 (/opt/rustwide/workdir/crypto/rsa_simple_demo) [INFO] [stdout] warning: the item `study_practice` is imported redundantly [INFO] [stdout] --> study-practice/src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use study_practice; [INFO] [stdout] | ^^^^^^^^^^^^^^ the item `study_practice` is already defined by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `study_practice` is imported redundantly [INFO] [stdout] --> study-practice/src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use study_practice; [INFO] [stdout] | ^^^^^^^^^^^^^^ the item `study_practice` is already defined by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the usage of Script Group `Greek` in this crate consists solely of mixed script confusables [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | φ_n: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: the usage includes 'φ' (U+03C6) [INFO] [stdout] = note: please recheck to make sure their usages are indeed what you want [INFO] [stdout] = note: `#[warn(mixed_script_confusables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `thread_rng` [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::{thread_rng, Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut opp_val; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking vsock-node v0.2.2 (/opt/rustwide/workdir/vsock-node) [INFO] [stdout] warning: fields `p` and `q` are never read [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct RSA { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 39 | p: usize, [INFO] [stdout] | ^ [INFO] [stdout] 40 | q: usize, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Display` [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fmt::{Display, Error}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the usage of Script Group `Greek` in this crate consists solely of mixed script confusables [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | φ_n: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: the usage includes 'φ' (U+03C6) [INFO] [stdout] = note: please recheck to make sure their usages are indeed what you want [INFO] [stdout] = note: `#[warn(mixed_script_confusables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `thread_rng` [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::{thread_rng, Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut opp_val; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `p` and `q` are never read [INFO] [stdout] --> crypto/rsa_simple_demo/src/lib.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct RSA { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 39 | p: usize, [INFO] [stdout] | ^ [INFO] [stdout] 40 | q: usize, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking data_structure v0.2.2 (/opt/rustwide/workdir/crypto/data_structure) [INFO] [stdout] warning: the item `String` is imported redundantly [INFO] [stdout] --> vsock-node/src/proto_socket.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::string::String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:144:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `String` is already defined here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::thread_pool::ThreadPool` [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::thread_pool::ThreadPool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::thread_pool::ThreadPool` [INFO] [stdout] --> vsock-node/src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::thread_pool::ThreadPool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TryInto` is imported redundantly [INFO] [stdout] --> vsock-node/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::convert::TryInto; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:148:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `TryInto` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `String` is imported redundantly [INFO] [stdout] --> vsock-node/src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::string::String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:144:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `String` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `String` is imported redundantly [INFO] [stdout] --> vsock-node/src/proto_socket.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::string::String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:144:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `String` is already defined here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::thread_pool::ThreadPool` [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::thread_pool::ThreadPool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::thread_pool::ThreadPool` [INFO] [stdout] --> vsock-node/src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::thread_pool::ThreadPool; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TryInto` is imported redundantly [INFO] [stdout] --> vsock-node/src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::convert::TryInto; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:148:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `TryInto` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `String` is imported redundantly [INFO] [stdout] --> vsock-node/src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::string::String; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:144:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `String` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking async-web-server v0.2.2 (/opt/rustwide/workdir/async-web-server) [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> crypto/ecc_simple_demo/src/bls.rs:123:13 [INFO] [stdout] | [INFO] [stdout] 123 | for i in 0..num_sig { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | for i in 0..shard_num { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `points` is assigned to, but never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:268:17 [INFO] [stdout] | [INFO] [stdout] 268 | let mut points = vec![]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_points` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `points` is never read [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:270:9 [INFO] [stdout] | [INFO] [stdout] 270 | points = get_points(n, &ecc29); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `points` [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:304:13 [INFO] [stdout] | [INFO] [stdout] 304 | let points = get_points(n, &ecc29); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_points` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `points` is assigned to, but never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:337:17 [INFO] [stdout] | [INFO] [stdout] 337 | let mut points = vec![]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_points` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `points` is never read [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | points = get_points(n, &ecc29); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `points` is assigned to, but never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:357:17 [INFO] [stdout] | [INFO] [stdout] 357 | let mut points = vec![]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_points` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `points` is never read [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 359 | points = get_points(n, &ecc29); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `points` is assigned to, but never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:396:17 [INFO] [stdout] | [INFO] [stdout] 396 | let mut points = vec![]; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_points` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `points` is never read [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:398:9 [INFO] [stdout] | [INFO] [stdout] 398 | points = get_points(n, &ecc29); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> crypto/ecc_simple_demo/src/eddsa.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let msg = 88; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mod_val` [INFO] [stdout] --> crypto/ecc_simple_demo/src/eddsa.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mod_val = 251; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mod_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecc.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const A: usize = 1; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `concat_point` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Ecdsa { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 55 | fn concat_point(&self, a: Point, b: Point) -> Point { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VERSION_BYTES_MAINNET_PUBLIC` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const VERSION_BYTES_MAINNET_PUBLIC: [u8; 4] = [0x04, 0x88, 0xB2, 0x1E]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VERSION_BYTES_MAINNET_PRIVATE` is never used [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const VERSION_BYTES_MAINNET_PRIVATE: [u8; 4] = [0x04, 0x88, 0xAD, 0xE4]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `network`, `child_number`, `depth`, `chain_code`, and `private_key` are never read [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct HDPrivKey { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 36 | network: [u8; 4], [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 37 | child_number: u32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 38 | depth: u8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 39 | parent_fingerprint: [u8; 4], [INFO] [stdout] 40 | chain_code: [u8; 32], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 41 | private_key: SecretKey, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HDPrivKey` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `network`, `child_number`, `depth`, `chain_code`, and `public_key` are never read [INFO] [stdout] --> crypto/ecc_simple_demo/src/hd_wallet_derive.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | pub struct HDPubKey { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 73 | network: [u8; 4], // 将 “xprv” 0488ade4 或者 “xpub” 0488b21e 放在开头,以表示其内容。前者表示私钥,后者表示公钥 ... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 74 | child_number: u32, // 从父密钥派生出本密钥所用的索引号 [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 75 | depth: u8, // 从主密钥到本密钥经过多少次派生 [INFO] [stdout] | ^^^^^ [INFO] [stdout] 76 | parent_fingerprint: [u8; 4], // 父 公钥 的 hash160 哈希值的前 4 字节。这可以在日后帮助定位父密钥 [INFO] [stdout] 77 | chain_code: [u8; 32], // 额外的 32 字节的秘密值。没有这个值就无法派生子密钥 [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 78 | public_key: PublicKey, // 私钥(加上 0x00 作为前缀),或者公钥 [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `HDPubKey` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/bls.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | let G = g_point; [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecc.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub G: Point, [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecc.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | let G = g; [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `G` should have a snake case name [INFO] [stdout] --> crypto/ecc_simple_demo/src/ecdsa.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | let G = g; [INFO] [stdout] | ^ help: convert the identifier to snake case: `g` [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> crypto/ecc_simple_demo/src/lib.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | #[warn(non_snake_case)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 24 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> async-web-server/src/main.rs:4:23 [INFO] [stdout] | [INFO] [stdout] 4 | use async_std::task::{self, spawn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> vsock-node/src/proto_socket.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | let mut timeout = libc::timeval { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sleep` [INFO] [stdout] --> async-web-server/src/main.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let sleep = b"GET /sleep HTTP/1.1\r\n"; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_sleep` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> vsock-node/src/proto_socket.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | let mut timeout = libc::timeval { [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `stream` is never read [INFO] [stdout] --> vsock-node/src/http_send_recv.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct HttpSender { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 6 | stream: TcpStream, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `listener` is never read [INFO] [stdout] --> vsock-node/src/http_send_recv.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct HttpReceiver { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 10 | listener: TcpListener, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_with` and `receive_data` are never used [INFO] [stdout] --> vsock-node/src/http_send_recv.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl HttpReceiver { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 14 | fn new_with(host: &str, port: u16) -> HttpReceiver { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn receive_data(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `proto_type` is never read [INFO] [stdout] --> vsock-node/src/proto_socket.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ProtoSocket<'a> { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 24 | proto_type: ProtoType<'a>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProtoSocket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BUF_MAX_LEN` is never used [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const BUF_MAX_LEN: usize = 8192; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `stream` is never read [INFO] [stdout] --> vsock-node/src/http_send_recv.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct HttpSender { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 6 | stream: TcpStream, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `listener` is never read [INFO] [stdout] --> vsock-node/src/http_send_recv.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct HttpReceiver { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 10 | listener: TcpListener, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_with` and `receive_data` are never used [INFO] [stdout] --> vsock-node/src/http_send_recv.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl HttpReceiver { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 14 | fn new_with(host: &str, port: u16) -> HttpReceiver { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | fn receive_data(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `proto_type` is never read [INFO] [stdout] --> vsock-node/src/proto_socket.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ProtoSocket<'a> { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 24 | proto_type: ProtoType<'a>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProtoSocket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BUF_MAX_LEN` is never used [INFO] [stdout] --> vsock-node/src/sender_receiver.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const BUF_MAX_LEN: usize = 8192; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> async-web-server/src/main.rs:4:23 [INFO] [stdout] | [INFO] [stdout] 4 | use async_std::task::{self, spawn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sleep` [INFO] [stdout] --> async-web-server/src/main.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let sleep = b"GET /sleep HTTP/1.1\r\n"; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_sleep` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `socket` [INFO] [stdout] --> study-example/src/bin/socket_server.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | Ok((socket, addr)) => println!("Got a client: {addr:?}"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `guess_game` is never used [INFO] [stdout] --> study-example/src/main.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn guess_game() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `socket` [INFO] [stdout] --> study-example/src/bin/socket_server.rs:11:13 [INFO] [stdout] | [INFO] [stdout] 11 | Ok((socket, addr)) => println!("Got a client: {addr:?}"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `guess_game` is never used [INFO] [stdout] --> study-example/src/main.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn guess_game() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> redis-simple/examples/mini-tokio.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hash_map` [INFO] [stdout] --> study-example/src/common_collection/hash_map_study.rs:1:24 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{hash_map, HashMap}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MutexGuard` [INFO] [stdout] --> study-example/src/concurrency/dead_lock.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, Mutex, MutexGuard}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> study-example/src/package_crate_module/package_crate_module.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::*` [INFO] [stdout] --> study-example/src/package_crate_module/package_crate_module.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Drop` is imported redundantly [INFO] [stdout] --> study-example/src/smart_pointer/drop_trait.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ops::Drop; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:148:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `Drop` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AsyncRead` [INFO] [stdout] --> redis-simple/examples/io-rw.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use tokio::io::{self, AsyncRead, AsyncReadExt, AsyncWriteExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> redis-simple/examples/io-rw.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | let mut content = read_file_end().await.unwrap(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `return_self_sever` is never used [INFO] [stdout] --> redis-simple/examples/io-rw.rs:43:10 [INFO] [stdout] | [INFO] [stdout] 43 | async fn return_self_sever() -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking consensus_algorithm v0.1.0 (/opt/rustwide/workdir/crypto/consensus_algorithm) [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> crypto/consensus_algorithm/src/pow.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SeedableRng` [INFO] [stdout] --> crypto/consensus_algorithm/src/pos.rs:2:29 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::{thread_rng, Rng, SeedableRng}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> study-example/src/smart_pointer/refcell_pointer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> crypto/consensus_algorithm/src/pow.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SeedableRng` [INFO] [stdout] --> crypto/consensus_algorithm/src/pos.rs:2:29 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::{thread_rng, Rng, SeedableRng}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ripemd160` [INFO] [stdout] --> crypto/enc_dec/src/base58.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use crypto::{ripemd160, sha2::Sha256}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> crypto/enc_dec/src/bech32.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:12:20 [INFO] [stdout] | [INFO] [stdout] 12 | fn takes_long_type(f: Box) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:20:26 [INFO] [stdout] | [INFO] [stdout] 20 | fn takes_long_type_short(f: Thunk) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:41:15 [INFO] [stdout] | [INFO] [stdout] 41 | fn generic(t: T) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:43:28 [INFO] [stdout] | [INFO] [stdout] 43 | fn generic_sized(t: T) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:45:31 [INFO] [stdout] | [INFO] [stdout] 45 | fn generic_sized_2(t: &T) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> study-example/src/advance_feature/unsafe_rust.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | let r = address as *const i32; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max64_int` [INFO] [stdout] --> study-example/src/basic_concept/basic_concept.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | let max64_int = 2 ^ 64 - 1; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max64_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `x` is never read [INFO] [stdout] --> study-example/src/basic_concept/basic_concept.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 59 | let mut x: u16 = 10000; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/consensus_algorithm/src/raft.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | mut connect_peer_channel: &'a mut HashMap>>>, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `vec1` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut vec1: Vec = Vec::new(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `values` [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | let values: [i32; 3] = [12, 23, 43]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `term` [INFO] [stdout] --> crypto/consensus_algorithm/src/raft.rs:214:51 [INFO] [stdout] | [INFO] [stdout] 214 | RaftMessageBody::AppendEntriesRequest(term, log) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_term` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> crypto/crypto_small_math/src/basic_bit_compute.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `vote_for`, `commit_index`, and `connect_peer_channel` are never read [INFO] [stdout] --> crypto/consensus_algorithm/src/raft.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct RaftNode<'a> { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 36 | vote_for: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 37 | log: Vec, [INFO] [stdout] 38 | commit_index: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 39 | sender: Arc>>, [INFO] [stdout] 40 | connect_peer_channel: &'a mut HashMap>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `some_number` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | let some_number = Some(5); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/consensus_algorithm/src/raft.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | mut connect_peer_channel: &'a mut HashMap>>>, [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `some_char` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | let some_char = Some('S'); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_some_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | let number: i32 = 32; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:119:23 [INFO] [stdout] | [INFO] [stdout] 119 | Coin::ETH(str) => 100_0000_0000_0000_0000, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str` [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | Coin::USDT(str) => 100_0000, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `term` [INFO] [stdout] --> crypto/consensus_algorithm/src/raft.rs:214:51 [INFO] [stdout] | [INFO] [stdout] 214 | RaftMessageBody::AppendEntriesRequest(term, log) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_term` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking des v0.2.2 (/opt/rustwide/workdir/crypto/des) [INFO] [stderr] Checking list v0.2.2 (/opt/rustwide/workdir/list) [INFO] [stdout] warning: fields `vote_for`, `commit_index`, and `connect_peer_channel` are never read [INFO] [stdout] --> crypto/consensus_algorithm/src/raft.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct RaftNode<'a> { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 36 | vote_for: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 37 | log: Vec, [INFO] [stdout] 38 | commit_index: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 39 | sender: Arc>>, [INFO] [stdout] 40 | connect_peer_channel: &'a mut HashMap>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num1` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let num1: &i32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_num1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num2` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let num2: &'a i32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_num2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num3` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let num3: &'a mut i32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_num3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:74:9 [INFO] [stdout] | [INFO] [stdout] 74 | let s: &'static str = "test 'static"; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-example/src/iterator_closure/closure_study.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let s = example_closures(String::from("closures.")); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/enc_dec/src/bech32.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | let mut u5_bytes: Vec = data_bytes [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `r_len` is never read [INFO] [stdout] --> crypto/enc_dec/src/der.rs:44:17 [INFO] [stdout] | [INFO] [stdout] 44 | let mut r_len = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s_len` is never read [INFO] [stdout] --> crypto/enc_dec/src/der.rs:45:17 [INFO] [stdout] | [INFO] [stdout] 45 | let mut s_len = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/enc_dec/src/endian_big_little.rs:36:28 [INFO] [stdout] | [INFO] [stdout] 36 | let (mut quotient, mut remainder) = self.div_rem(&radix); [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] --> crypto/enc_dec/src/endian_big_little.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | let (quot, mut remainder) = quotient.div_rem(&radix); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `post` [INFO] [stdout] --> study-example/src/object_oriented/object_oriented_desgin_pattern.rs:40:27 [INFO] [stdout] | [INFO] [stdout] 40 | fn content<'a>(&self, post: &'a Post) -> &'a str { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_post` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> study-example/src/object_oriented/object_oriented_desgin_pattern.rs:88:14 [INFO] [stdout] | [INFO] [stdout] 88 | Some(state) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TryFrom` is imported redundantly [INFO] [stdout] --> study-practice/src/advance_rust/new_type.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:148:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `TryFrom` is already defined here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> study-practice/src/error_result/result_handle.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> study-practice/src/loop_practice.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | 'inner2: loop { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> study-practice/src/string_practice/string_type.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process::Output` [INFO] [stdout] --> study-practice/src/traits/advance_trait.rs:186:5 [INFO] [stdout] | [INFO] [stdout] 186 | use std::process::Output; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> study-practice/src/async_await/basic_usage.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> study-practice/src/async_await/basic_usage.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Future` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:8:25 [INFO] [stdout] | [INFO] [stdout] 8 | use std::future::{join, Future}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-example/src/ownership/ownership.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut s1 = String::from("hello"); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-example/src/ownership/ownership.rs:55:17 [INFO] [stdout] | [INFO] [stdout] 55 | let mut s4 = s3; [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] --> study-example/src/ownership/ownership.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let mut str = String::from("move_function_study hello"); [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] --> study-example/src/ownership/ownership.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | let mut int1 = 188; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str_ref` [INFO] [stdout] --> study-example/src/ownership/ownership.rs:121:19 [INFO] [stdout] | [INFO] [stdout] 121 | fn modify_str(str_ref: &String) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_str_ref` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string_literal` [INFO] [stdout] --> study-example/src/ownership/ownership.rs:223:13 [INFO] [stdout] | [INFO] [stdout] 223 | let string_literal = "hello string literal"; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-example/src/ownership/ownership.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | let mut source_str = String::from("slice hello"); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> list/src/double_direct_list.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> list/src/optimal_list.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DecodeResult` is more private than the item `rlp::decode` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:75:1 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn decode(mut cursor: &mut Cursor<&[u8]>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `rlp::decode` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `DecodeResult` is only usable at visibility `pub(self)` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:69:1 [INFO] [stdout] | [INFO] [stdout] 69 | enum DecodeResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DecodeResult` is more private than the item `rlp::decoder` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:155:1 [INFO] [stdout] | [INFO] [stdout] 155 | pub fn decoder(data: &[u8]) -> Result, &'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `rlp::decoder` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `DecodeResult` is only usable at visibility `pub(self)` [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:69:1 [INFO] [stdout] | [INFO] [stdout] 69 | enum DecodeResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_u5` is never used [INFO] [stdout] --> crypto/enc_dec/src/bech32.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn encode_u5(input: u8) -> char { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Multi` is never constructed [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 69 | enum DecodeResult { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 70 | Single(Vec), [INFO] [stdout] 71 | Multi(Vec>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DecodeResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> crypto/enc_dec/src/rlp.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | if first_byte <= 0xff { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> study-example/src/smart_pointer/deref_trait.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | let y = &x; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer1` [INFO] [stdout] --> study-example/src/smart_pointer/drop_trait.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let pointer1 = Point { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pointer2` [INFO] [stdout] --> study-example/src/smart_pointer/drop_trait.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let pointer2 = Point { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pointer2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `async_fn_in_trait` has been stable since 1.75.0 and no longer requires an attribute to enable [INFO] [stdout] --> study-practice/src/lib.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(async_fn_in_trait)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> study-example/src/smart_pointer/rc_t_count_pointer.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let b = List::Cons(15, Box::new(a)); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> study-example/src/smart_pointer/rc_t_count_pointer.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | let d = RcList::Cons(21, Rc::clone(&a)); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `color` [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let color = Color(32, 34, 43); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_color` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `point` [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let point = Point(23, -23); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | let mut value = array[array_index as usize]; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/advance_feature/advanced_function_closures.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | Value(u32), [INFO] [stdout] | ----- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 45 | Value(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Stop` is never constructed [INFO] [stdout] --> study-example/src/advance_feature/advanced_function_closures.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 44 | enum Status { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] 45 | Value(u32), [INFO] [stdout] 46 | Stop, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Status` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `takes_long_type_short` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn takes_long_type_short(f: Thunk) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `never_fn` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:32:4 [INFO] [stdout] | [INFO] [stdout] 32 | fn never_fn() -> ! { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn generic(t: T) {} [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic_sized` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn generic_sized(t: T) {} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic_sized_2` is never used [INFO] [stdout] --> study-example/src/advance_feature/advanced_type.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn generic_sized_2(t: &T) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Foo` is never used [INFO] [stdout] --> study-example/src/advance_feature/unsafe_rust.rs:84:14 [INFO] [stdout] | [INFO] [stdout] 84 | unsafe trait Foo { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | let mut left_clone = Rc::new(RefCell::new(left)); [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] --> crypto/des/src/des_char_impl.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let mut right_clone = Rc::new(RefCell::new(right)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `decimal` is never read [INFO] [stdout] --> study-example/src/common_collection/hash_map_study.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | struct CoinProerty { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 11 | decimal: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoinProerty` 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 `0` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | Int(i32), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 55 | Int(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | Float(f64), [INFO] [stdout] | ----- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 56 | Float(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/common_collection/vector_study.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | Text(String), [INFO] [stdout] | ---- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 57 | Text(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V6` is never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 3 | enum IpAddrType { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 4 | V4, [INFO] [stdout] 5 | V6, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddrType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ip_addr_type` and `address` are never read [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | struct IpAddr { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 10 | ip_addr_type: IpAddrType, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 11 | address: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddr` 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 `0` is never read [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | V4(String), [INFO] [stdout] | -- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 16 | V4(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V6` is never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 15 | enum IpAddrEnum { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 16 | V4(String), [INFO] [stdout] 17 | V6(String), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddrEnum` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Message` is never used [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | enum Message { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | Write(String), // 包括一个单个的字符串 [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 49 | Write(()), // 包括一个单个的字符串 [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_right` is never read [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:137:17 [INFO] [stdout] | [INFO] [stdout] 137 | let mut current_right: Vec = vec![]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit`, `Move`, and `ChangeColor` are never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | enum Msg { [INFO] [stdout] | --- variants in this enum [INFO] [stdout] 47 | Quit, // 没有数据关联 [INFO] [stdout] | ^^^^ [INFO] [stdout] 48 | Move { x: i32, y: i32 }, // 像struct做的,有命名的字段 [INFO] [stdout] | ^^^^ [INFO] [stdout] 49 | Write(String), // 包括一个单个的字符串 [INFO] [stdout] 50 | ChangeColor(i32, i64, String), // 包括几个类型的数据 [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Msg` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ETH` and `USDT` are never constructed [INFO] [stdout] --> study-example/src/enum_pattern_match/enum_pattern_match.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 108 | enum Coin { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 109 | BTC(String), [INFO] [stdout] 110 | ETH(String), [INFO] [stdout] | ^^^ [INFO] [stdout] 111 | USDT(String), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Coin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_panic_self` is never used [INFO] [stdout] --> study-example/src/error_handle/panic_unrecoverable.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn call_panic_self() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cause_lib_panic` is never used [INFO] [stdout] --> study-example/src/error_handle/panic_unrecoverable.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn cause_lib_panic() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Score` is never constructed [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | struct Score<'a> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_score` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 38 | impl<'a> Score<'a> { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 39 | // [规则3]:因为参数之一是 &self ,所以返回类型获取 &self 的生命周期 [INFO] [stdout] 40 | fn get_score(&self) -> &i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `first_world` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/lifetime_study.rs:46:4 [INFO] [stdout] | [INFO] [stdout] 46 | fn first_world(str: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> study-example/src/generic_traits_lifetime/traits_study.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Pair { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 154 | let mut p_result = self.p_box_permutation(&s_result); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/traits_study.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Pair { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 8 | fn new(x: T, y: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `cmp_display` is never used [INFO] [stdout] --> study-example/src/generic_traits_lifetime/traits_study.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl Pair { [INFO] [stdout] | ------------------------------------- method in this implementation [INFO] [stdout] 13 | fn cmp_display(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_closures_study` is never used [INFO] [stdout] --> study-example/src/iterator_closure/closure_study.rs:64:4 [INFO] [stdout] | [INFO] [stdout] 64 | fn example_closures_study() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `height` is never read [INFO] [stdout] --> study-example/src/iterator_closure/closure_study.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 114 | struct Rectangle { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 115 | width: u32, [INFO] [stdout] 116 | height: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rectangle` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `options` is never read [INFO] [stdout] --> study-example/src/object_oriented/trait_object_for_diff_type.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SelectBox { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 36 | options: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SelectBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `modify_str` is never used [INFO] [stdout] --> study-example/src/ownership/ownership.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 121 | fn modify_str(str_ref: &String) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Rgb` is never constructed [INFO] [stdout] --> study-example/src/pattern_match/pattern_syntax.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 91 | enum Color { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 92 | Rgb(i32, i32, i32), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit` and `Write` are never constructed [INFO] [stdout] --> study-example/src/pattern_match/pattern_syntax.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 95 | enum Message { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 96 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 97 | Move { x: i32, y: i32 }, [INFO] [stdout] 98 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Message` is never used [INFO] [stdout] --> study-example/src/smart_pointer/box_pointer.rs:21:6 [INFO] [stdout] | [INFO] [stdout] 21 | enum Message { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> study-example/src/smart_pointer/refcell_pointer.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | Cons(Rc>, Rc), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 69 | Cons((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-example/src/smart_pointer/reference_cycle.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | Cons(i32, RefCell>), [INFO] [stdout] | ---- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 7 | Cons((), RefCell>), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `value` and `children` are never read [INFO] [stdout] --> study-example/src/smart_pointer/reference_cycle.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 50 | struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 51 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 52 | parent: RefCell>, [INFO] [stdout] 53 | children: RefCell>>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `user_id`, `age`, and `active` are never read [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | struct User { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 3 | user_id: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 4 | user_name: String, [INFO] [stdout] 5 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] 6 | active: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `User` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 167 | let mut left_clone = Arc::new(RefCell::new(left.to_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] --> crypto/des/src/des_char_impl.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | let mut right_clone = Arc::new(RefCell::new(right.to_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] --> crypto/des/src/des_char_impl.rs:171:17 [INFO] [stdout] | [INFO] [stdout] 171 | let mut current_r = self.round_handle_r_func( [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:25:14 [INFO] [stdout] | [INFO] [stdout] 25 | struct Color(i32, i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 25 | struct Color((), (), ()); [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> study-example/src/struct_related/define_init_struct.rs:26:14 [INFO] [stdout] | [INFO] [stdout] 26 | struct Point(i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 26 | struct Point((), ()); [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DES` is never constructed [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | struct DES { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_index`, `get_pos_value`, `to_value`, `replace_bit_by_list`, and `init_key_permutation` are never used [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl DES { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 18 | pub fn new(key: [u8; 8], round: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | fn get_index(&self, pos: u8) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | fn get_pos_value(&self, origin: &[u8], pos: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | fn to_value(&self, array: &mut [u8], pos: u8, origin_pos_value: u8) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn replace_bit_by_list(&self, origin: &[u8], table: &[u8], result: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn init_key_permutation(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DESChar` is never constructed [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct DESChar { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `permutation_by_table` is never used [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn permutation_by_table(origin: &[u8], table: &[u8], src_len: usize, dest_len: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `coinMap` should have a snake case name [INFO] [stdout] --> study-example/src/common_collection/hash_map_study.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let mut coinMap: HashMap = HashMap::new(); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `coin_map` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl DESChar { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 30 | pub fn new(key: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn init_permutation_key(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | fn get_l_and_r_of_init_key(&mut self) -> (&mut [u8], &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn sub_key_permutation(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn plaintext_init_permutation(&self, plaintext: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn extend_right(&self, right: &mut [u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn s_box_convert(&self, input: &[u8]) -> [u8; 32] { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn p_box_permutation(&self, input: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | fn round_handle_r_func( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | fn round_handle(&self, init_perm_plaintext: &mut [u8], is_encrypt: bool) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn encrypt(&self, plaintext: &str) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | pub fn decrypt(&self, cipher: &str) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INIT_KEY_PERMUTATION` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | pub(crate) const INIT_KEY_PERMUTATION: [u8; 56] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROUND` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:9:18 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) const ROUND: usize = 16; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEY_SHIFT_SIZE` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:13:18 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) const KEY_SHIFT_SIZE: [u8; ROUND] = [1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1]; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUB_KEY_PERMUTATION` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:17:18 [INFO] [stdout] | [INFO] [stdout] 17 | pub(crate) const SUB_KEY_PERMUTATION: [u8; 48] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INIT_PLAINTEXT_PERMUTATION` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:23:18 [INFO] [stdout] | [INFO] [stdout] 23 | pub(crate) const INIT_PLAINTEXT_PERMUTATION: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXTEND_R_PLAINTEXT_PERMUTATION` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:32:18 [INFO] [stdout] | [INFO] [stdout] 32 | pub(crate) const EXTEND_R_PLAINTEXT_PERMUTATION: [u8; 48] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `S` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | pub(crate) const S: [[u8; 64]; 8] = [ [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_R_SUB_PLAINTEXT_PERMUTATION` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:83:18 [INFO] [stdout] | [INFO] [stdout] 83 | pub(crate) const P_R_SUB_PLAINTEXT_PERMUTATION: [u8; 32] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FINAL_PERMUTATION` is never used [INFO] [stdout] --> crypto/des/src/permutation_list.rs:88:18 [INFO] [stdout] | [INFO] [stdout] 88 | pub(crate) const FINAL_PERMUTATION: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 84 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 22 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `DerefMut` is imported redundantly [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 82 | use super::*; [INFO] [stdout] | -------- the item `DerefMut` is already imported here [INFO] [stdout] 83 | use std::ops::DerefMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EXTEND_R_PLAINTEXT_PERMUTATION`, `S` [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:224:35 [INFO] [stdout] | [INFO] [stdout] 224 | use crate::permutation_list::{EXTEND_R_PLAINTEXT_PERMUTATION, S}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:49:28 [INFO] [stdout] | [INFO] [stdout] 49 | task3_fut.map_err(|err| "task1 error".to_string()), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | task1_fut.map_err(|err| "task3 error".to_string()) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> list/src/double_direct_list.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> list/src/optimal_list.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::List` [INFO] [stdout] --> list/src/unsafe_list.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | use super::List; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> crypto/crypto_util/src/base_compute.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | while xy.0 < 0 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> crypto/crypto_util/src/point.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | if lambda < 0 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | let mut value = array[array_index as usize]; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | let mut des = DES::new(keys, 16); [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] --> crypto/des/src/des_char_impl.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | let mut left_clone = Rc::new(RefCell::new(left)); [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] --> crypto/des/src/des_char_impl.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let mut right_clone = Rc::new(RefCell::new(right)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_right` is never read [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:137:17 [INFO] [stdout] | [INFO] [stdout] 137 | let mut current_right: Vec = vec![]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 154 | let mut p_result = self.p_box_permutation(&s_result); [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] --> crypto/des/src/des_char_impl.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 167 | let mut left_clone = Arc::new(RefCell::new(left.to_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] --> crypto/des/src/des_char_impl.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | let mut right_clone = Arc::new(RefCell::new(right.to_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] --> crypto/des/src/des_char_impl.rs:171:17 [INFO] [stdout] | [INFO] [stdout] 171 | let mut current_r = self.round_handle_r_func( [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] --> crypto/des/src/des_char_impl.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | let mut des_char = DESChar::new( [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] --> crypto/des/src/des_char_impl.rs:292:13 [INFO] [stdout] | [INFO] [stdout] 292 | let mut left_clone = Arc::new(RefCell::new(left.to_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] --> crypto/des/src/des_char_impl.rs:293:13 [INFO] [stdout] | [INFO] [stdout] 293 | let mut right_clone = Arc::new(RefCell::new(right.to_vec())); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `round` is never read [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 6 | struct DES { [INFO] [stdout] | --- field in this struct [INFO] [stdout] ... [INFO] [stdout] 12 | round: u8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `init_key_permutation` is never used [INFO] [stdout] --> crypto/des/src/des_bit_impl.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl DES { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn init_key_permutation(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_l_and_r_of_init_key` is never used [INFO] [stdout] --> crypto/des/src/des_char_impl.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 29 | impl DESChar { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | fn get_l_and_r_of_init_key(&mut self) -> (&mut [u8], &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut static_string: &'static str; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `str_val` [INFO] [stdout] --> study-practice/src/advance_rust/smart_pointer.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | fn foo(str_val: &str) {} [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_str_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `foo_container` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let foo_container = foo.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_foo_container` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bar_container` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | let bar_container = bar.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bar_container` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c1` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let c1: char = decimal as u8 as char; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_c1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c2` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let c2 = integer as char; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_c2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | let v = 1000 as u8; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i3` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | let i3: u32 = 'a'.into(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_i3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i4` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 161 | let i4: i32 = 'a' as i32; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_i4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 164 | let s: String = 'a'.into(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arr0` [INFO] [stdout] --> study-practice/src/array_practice.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | let arr0 = [1, 2, 3]; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_arr0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name0` [INFO] [stdout] --> study-practice/src/array_practice.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | let name0 = names.get(0).unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_name0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/borrow_reference.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut s = String::from("hello, "); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | fn borrow_object(s: &String) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/borrow_reference.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let mut s = String::from("hello"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:128:22 [INFO] [stdout] | [INFO] [stdout] 128 | fn borrow_object_mut(s: &mut String) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:139:20 [INFO] [stdout] | [INFO] [stdout] 139 | fn borrow_object_9(s: &String) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r1` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | let r1 = &mut s; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r2` [INFO] [stdout] --> study-practice/src/borrow_reference.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | let r2 = &mut s; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_r2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/collection/vec_practice.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | fn is_vec(v: &Vec) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg1` [INFO] [stdout] --> study-practice/src/enum_practice.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let msg1 = Message::Move { x: 1, y: 2 }; // 使用x = 1, y = 2 来初始化 [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_msg1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg2` [INFO] [stdout] --> study-practice/src/enum_practice.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let msg2 = Message::Write("hello, world!".to_string()); // 使用 "hello, world!" 来初始化 [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_msg2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `none` [INFO] [stdout] --> study-practice/src/enum_practice.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | let none = plus_one(None); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_none` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ele` [INFO] [stdout] --> study-practice/src/error_result/panic.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let ele = v[2]; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ele` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ele` [INFO] [stdout] --> study-practice/src/error_result/panic.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let ele = v.get(2).expect("array get ele failed."); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ele` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/error_result/panic.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let v = production_rate_per_hour(2); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> study-practice/src/error_result/result_handle.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut s = String::new(); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> study-practice/src/generic.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let integer = Point { x: 5, y: 10 }; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> study-practice/src/generic.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let float = Point { x: 1.0, y: 4.0 }; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> study-practice/src/generic.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let p = Point { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arrays` [INFO] [stdout] --> study-practice/src/generic.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | let arrays = [ [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_arrays` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> study-practice/src/loop_practice.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | for name in &names { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> study-practice/src/loop_practice.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | for n in numbers { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> study-practice/src/loop_practice.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | for i in 0..=100 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> study-practice/src/loop_practice.rs:182:9 [INFO] [stdout] | [INFO] [stdout] 182 | for i in 0..=100 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> study-practice/src/match_practice.rs:77:30 [INFO] [stdout] | [INFO] [stdout] 77 | assert!(matches!(ab, char)) [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> study-practice/src/match_practice.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | if let Foo::Bar(i) = a { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `others` [INFO] [stdout] --> study-practice/src/match_practice.rs:135:9 [INFO] [stdout] | [INFO] [stdout] 135 | others => println!("match others"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_others` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s1` [INFO] [stdout] --> study-practice/src/string_practice/slice.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let s1: &[i32] = &arr[0..2]; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s2` [INFO] [stdout] --> study-practice/src/string_practice/slice.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let s2: &str = "hello, world" as &str; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> study-practice/src/string_practice/string.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let s: &str = "hello, world"; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s1` [INFO] [stdout] --> study-practice/src/string_practice/string.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | let s1: &str = s.as_str(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/string_practice/string_type.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let mut s = String::from("hello, world"); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> study-practice/src/string_practice/string_type.rs:130:13 [INFO] [stdout] | [INFO] [stdout] 130 | let mut s = String::new(); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> study-practice/src/struct_practice.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let p = Person1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> study-practice/src/struct_practice.rs:38:27 [INFO] [stdout] | [INFO] [stdout] 38 | fn do_something_with_unit(u: Unit) {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> study-practice/src/struct_practice.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let v = Point(32, 24, 98); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u2` [INFO] [stdout] --> study-practice/src/struct_practice.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | let u2 = set_email(u1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_u2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> study-practice/src/tuple.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let t: (u8, u16, i64, &str, String) = (1u8, 2u16, 3i64, "hello", String::from(", world")); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:181:40 [INFO] [stdout] | [INFO] [stdout] 181 | let _ = task1().await.map_err(|err| "err1".to_string()); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:182:40 [INFO] [stdout] | [INFO] [stdout] 182 | let _ = task2().await.map_err(|err| "err2".to_string()); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> study-practice/src/concurrency/sync_lock_condvar.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | for i in 0..8 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inner_thread` [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let inner_thread = thread::spawn(|| loop { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inner_thread` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let mut val: RefCell = RefCell::new(0); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `a` and `b` are never read [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | struct Config { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 15 | a: String, [INFO] [stdout] | ^ [INFO] [stdout] 16 | b: String, [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)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_it1` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn print_it1(input: impl Debug + 'static) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_c` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:113:4 [INFO] [stdout] | [INFO] [stdout] 113 | fn print_c(t: &'static dyn Display) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_d` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn print_d(t: &'static impl Display) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_g` is never used [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn print_g(t: &'static String) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enum_convert_match` is never used [INFO] [stdout] --> study-practice/src/advance_rust/new_type.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn enum_convert_match() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/advance_rust/pointer_ref_loop.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | Cons(i32, RefCell>), [INFO] [stdout] | ---- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 7 | Cons((), RefCell>), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `value` and `child` are never read [INFO] [stdout] --> study-practice/src/advance_rust/pointer_ref_loop.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 87 | struct Node { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 88 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 89 | parent: RefCell>, [INFO] [stdout] 90 | child: RefCell>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> study-practice/src/advance_rust/smart_pointer.rs:30:10 [INFO] [stdout] | [INFO] [stdout] 30 | Cons(i32, Box), [INFO] [stdout] | ---- ^^^ ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 30 | Cons((), ()), [INFO] [stdout] | ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Container` is never constructed [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | struct Container(Arc); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clone_containers` is never used [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn clone_containers(foo: &Container, bar: &Container) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:195:13 [INFO] [stdout] | [INFO] [stdout] 195 | IoError(io::Error), [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 195 | IoError(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:196:16 [INFO] [stdout] | [INFO] [stdout] 196 | ParseError(num::ParseIntError), [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 196 | ParseError(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `open_and_parse_file` is never used [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:210:4 [INFO] [stdout] | [INFO] [stdout] 210 | fn open_and_parse_file(file_name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unimplement` is never used [INFO] [stdout] --> study-practice/src/borrow_reference.rs:180:4 [INFO] [stdout] | [INFO] [stdout] 180 | fn unimplement() -> ! { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Zero` and `Two` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | enum Number { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 3 | Zero, [INFO] [stdout] | ^^^^ [INFO] [stdout] 4 | One, [INFO] [stdout] 5 | Two, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Zero` and `Two` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | enum Number1 { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 8 | Zero = 0, [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | One, [INFO] [stdout] 10 | Two, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Zero` and `Two` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | enum Number2 { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 14 | Zero = 0, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | One = 1, [INFO] [stdout] 16 | Two = 2, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | Move { x: i32, y: i32 }, [INFO] [stdout] | ---- ^ ^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | Write(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 33 | Write(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit` and `ChangeColor` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 30 | enum Message { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 31 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Quit`, `Write`, and `ChangeColor` are never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 47 | enum Message3 { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 48 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 49 | Move { x: i32, y: i32 }, [INFO] [stdout] 50 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 51 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 69 | Move { x: i32, y: i32 }, [INFO] [stdout] | ---- ^ ^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> study-practice/src/enum_practice.rs:71:17 [INFO] [stdout] | [INFO] [stdout] 71 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ----------- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 71 | ChangeColor((), (), ()), [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Write` is never constructed [INFO] [stdout] --> study-practice/src/enum_practice.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 67 | enum Message4 { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 70 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Message4` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `drink` is never used [INFO] [stdout] --> study-practice/src/error_result/panic.rs:4:4 [INFO] [stdout] | [INFO] [stdout] 4 | fn drink(beverage: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `method_1` is never used [INFO] [stdout] --> study-practice/src/error_result/panic.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn method_1() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> study-practice/src/generic.rs:67:5 [INFO] [stdout] | [INFO] [stdout] 66 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 67 | x: T, [INFO] [stdout] | ^ [INFO] [stdout] 68 | y: U, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data` is never read [INFO] [stdout] --> study-practice/src/generic.rs:153:5 [INFO] [stdout] | [INFO] [stdout] 152 | struct Array { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 153 | data: [T; N], [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `East`, `West`, and `North` are never constructed [INFO] [stdout] --> study-practice/src/match_practice.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | enum Direction { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 5 | East, [INFO] [stdout] | ^^^^ [INFO] [stdout] 6 | West, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | North, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/match_practice.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ----------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 42 | ChangeColor((), i32, i32), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Write` is never constructed [INFO] [stdout] --> study-practice/src/match_practice.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 38 | enum Message { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 41 | Write(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/match_practice.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | Qux(u32), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 125 | Qux(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Bar` and `Baz` are never constructed [INFO] [stdout] --> study-practice/src/match_practice.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 122 | enum Foo8 { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 123 | Bar, [INFO] [stdout] | ^^^ [INFO] [stdout] 124 | Baz, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrafficLight3` is never constructed [INFO] [stdout] --> study-practice/src/method.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | struct TrafficLight3 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `show_state` and `change_state` are never used [INFO] [stdout] --> study-practice/src/method.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl TrafficLight3 { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 45 | // 使用 `Self` 填空 [INFO] [stdout] 46 | pub fn show_state(self: &Self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn change_state(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rectangle5` is never constructed [INFO] [stdout] --> study-practice/src/method.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | struct Rectangle5 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `area` is never used [INFO] [stdout] --> study-practice/src/method.rs:89:8 [INFO] [stdout] | [INFO] [stdout] 88 | impl Rectangle5 { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 89 | fn area(&self) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `can_hold` is never used [INFO] [stdout] --> study-practice/src/method.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 93 | impl Rectangle5 { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 94 | fn can_hold(&self, other: &Rectangle) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Red` and `Green` are never constructed [INFO] [stdout] --> study-practice/src/method.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | enum TrafficLightColor6 { [INFO] [stdout] | ------------------ variants in this enum [INFO] [stdout] 103 | Red, [INFO] [stdout] | ^^^ [INFO] [stdout] 104 | Yellow, [INFO] [stdout] 105 | Green, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrafficLightColor6` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `method_2` is never used [INFO] [stdout] --> study-practice/src/string_practice/slice.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn method_2() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `age`, and `hobby` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | struct Person1 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 3 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 4 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] 5 | hobby: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SomeTrait` is never used [INFO] [stdout] --> study-practice/src/struct_practice.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | trait SomeTrait { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:43:14 [INFO] [stdout] | [INFO] [stdout] 43 | struct Point(i32, i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 43 | struct Point((), (), ()); [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `age` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 99 | struct Person5 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 100 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 101 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `active`, `username`, `email`, and `sign_in_count` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 118 | struct User { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 119 | active: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 120 | username: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 121 | email: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 122 | sign_in_count: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `width` and `height` are never read [INFO] [stdout] --> study-practice/src/struct_practice.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 151 | struct Rectangle { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 152 | width: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 153 | height: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rectangle` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `summarize` is never used [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:121:8 [INFO] [stdout] | [INFO] [stdout] 120 | trait Summary { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] 121 | fn summarize(&self) -> String; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `title`, `author`, and `content` are never read [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 124 | struct Post { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 125 | title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 126 | author: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 127 | content: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Post` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `username` and `content` are never read [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 135 | struct Weibo { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 136 | username: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 137 | content: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Weibo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> study-practice/src/traits/trait_base.rs:210:8 [INFO] [stdout] | [INFO] [stdout] 209 | impl Pair { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 210 | fn new(x: T, y: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `fly` is never used [INFO] [stdout] --> study-practice/src/traits/trait_object.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl Swan { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 12 | fn fly(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `fly` is never used [INFO] [stdout] --> study-practice/src/traits/trait_object.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 59 | impl Duck2 { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 60 | fn fly(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `fly` is never used [INFO] [stdout] --> study-practice/src/traits/trait_object.rs:66:8 [INFO] [stdout] | [INFO] [stdout] 65 | impl Swan2 { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 66 | fn fly(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example` is never used [INFO] [stdout] --> study-practice/src/var_ownership.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn example() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Executor` is never constructed [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | struct Executor { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `future` is never read [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 60 | struct Task { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 61 | future: Mutex>>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Spawner` is never constructed [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | struct Spawner { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `new_executor_and_spawner` is never used [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:69:4 [INFO] [stdout] | [INFO] [stdout] 69 | fn new_executor_and_spawner() -> (Executor, Spawner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `spawn` is never used [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl Spawner { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 76 | fn spawn(&self, future: impl Future + 'static + Send) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `run` is never used [INFO] [stdout] --> study-practice/src/async_await/timer_future.rs:94:8 [INFO] [stdout] | [INFO] [stdout] 93 | impl Executor { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 94 | fn run(&self) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `value` are never read [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct Task { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 14 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | value: T, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Task` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_two_stream` is never used [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:94:10 [INFO] [stdout] | [INFO] [stdout] 94 | async fn add_two_stream( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:132:27 [INFO] [stdout] | [INFO] [stdout] 132 | struct NotSendTraitStruct(Rc<()>); [INFO] [stdout] | ------------------ ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 132 | struct NotSendTraitStruct(()); [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recursive` is never used [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:149:4 [INFO] [stdout] | [INFO] [stdout] 149 | fn recursive() -> BoxFuture<'static, ()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TestAsync` is never used [INFO] [stdout] --> study-practice/src/async_await/join_select.rs:172:7 [INFO] [stdout] | [INFO] [stdout] 172 | trait TestAsync { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_for_receive` is never used [INFO] [stdout] --> study-practice/src/concurrency/channel_message_passing.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn example_for_receive() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_multi_sender` is never used [INFO] [stdout] --> study-practice/src/concurrency/channel_message_passing.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn example_multi_sender() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/concurrency/send_sync_trait.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | struct SendBox(*mut u8); [INFO] [stdout] | ------- ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `SendBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 5 | struct SendBox(()); [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> study-practice/src/concurrency/send_sync_trait.rs:20:16 [INFO] [stdout] | [INFO] [stdout] 20 | struct SyncBox(*const u8); [INFO] [stdout] | ------- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = note: `SyncBox` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 20 | struct SyncBox(()); [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_basic_create` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn example_basic_create() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `example_block` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn example_block() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `thread_barrier` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn thread_barrier() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `thread_local_example` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn thread_local_example() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `condition_var_example` is never used [INFO] [stdout] --> study-practice/src/concurrency/thread_usage.rs:78:4 [INFO] [stdout] | [INFO] [stdout] 78 | fn condition_var_example() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `config` should have an upper case name [INFO] [stdout] --> study-practice/src/advance_rust/lifetime.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | static mut config: Option<&mut Config> = None; [INFO] [stdout] | ^^^^^^ help: convert the identifier to upper case: `CONFIG` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> study-practice/src/advance_rust/type_deep.rs:59:28 [INFO] [stdout] | [INFO] [stdout] 59 | let bar_container = bar.clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the type `type_deep::Container` does not implement `Clone`, so calling `clone` on `&type_deep::Container` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] 59 - let bar_container = bar.clone(); [INFO] [stdout] 59 + let bar_container = bar; [INFO] [stdout] | [INFO] [stdout] help: if you meant to clone `type_deep::Container`, implement `Clone` for it [INFO] [stdout] | [INFO] [stdout] 56 + #[derive(Clone)] [INFO] [stdout] 57 | struct Container(Arc); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 142 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking hello_macro_derive v0.2.2 (/opt/rustwide/workdir/hello_macro_derive) [INFO] [stdout] warning: the item `syn` is imported redundantly [INFO] [stdout] --> hello_macro_derive/src/lib.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use syn; [INFO] [stdout] | ^^^ the item `syn` is already defined by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `syn` is imported redundantly [INFO] [stdout] --> hello_macro_derive/src/lib.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use syn; [INFO] [stdout] | ^^^ the item `syn` is already defined by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ethers-middleware v2.0.13 [INFO] [stderr] Checking ethers v2.0.13 [INFO] [stderr] Checking tool v0.2.2 (/opt/rustwide/workdir/tool) [INFO] [stdout] warning: unused import: `private_2_wif_key` [INFO] [stdout] --> tool/src/lib.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::btc::{private_2_wif_key, private_key_convert}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> tool/src/lib.rs:8:35 [INFO] [stdout] | [INFO] [stdout] 8 | use tracing::{debug, error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Prefix` [INFO] [stdout] --> tool/src/bip32.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use bip32::{DerivationPath, Prefix, XPrv, XPub}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Secp256k1`, `SecretKey` [INFO] [stdout] --> tool/src/btc.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | use secp256k1::{PublicKey, Secp256k1, SecretKey}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::builder::Str` [INFO] [stdout] --> tool/src/cli.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use clap::builder::Str; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Args` [INFO] [stdout] --> tool/src/cli.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | use clap::{Args, Parser, Subcommand}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::U128` [INFO] [stdout] --> tool/src/cli.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use ethers::types::U128; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::Write` [INFO] [stdout] --> tool/src/encrypt_decrypt.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{fmt::Write, string::String}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `String` is imported redundantly [INFO] [stdout] --> tool/src/encrypt_decrypt.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{fmt::Write, string::String}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:144:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `String` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bip32::secp256k1::elliptic_curve::weierstrass::add` [INFO] [stdout] --> tool/src/eth.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use bip32::secp256k1::elliptic_curve::weierstrass::add; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::builder::Str` [INFO] [stdout] --> tool/src/eth.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use clap::builder::Str; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::abi::AbiEncode` [INFO] [stdout] --> tool/src/eth.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use ethers::abi::AbiEncode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::utils::hex::ToHex` [INFO] [stdout] --> tool/src/eth.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ethers::utils::hex::ToHex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Address` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:14:19 [INFO] [stdout] | [INFO] [stdout] 14 | core::types::{Address, TransactionRequest}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 15 | etherscan::Client, [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `Address` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TransactionRequest` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | core::types::{Address, TransactionRequest}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | etherscan::Client, [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `TransactionRequest` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Client` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | etherscan::Client, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `Client` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `LocalWallet` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `LocalWallet` is already imported here [INFO] [stdout] 17 | signers::LocalWallet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> tool/src/eth.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_to_string` [INFO] [stdout] --> tool/src/file_handle.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fs::{read_to_string, File}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Empty` [INFO] [stdout] --> tool/src/http_request.rs:2:31 [INFO] [stdout] | [INFO] [stdout] 2 | use http_body_util::{BodyExt, Empty}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `serde_json` is imported redundantly [INFO] [stdout] --> tool/src/http_request.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use serde_json; [INFO] [stdout] | ^^^^^^^^^^ the item `serde_json` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `private_2_wif_key` [INFO] [stdout] --> tool/src/lib.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::btc::{private_2_wif_key, private_key_convert}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> tool/src/lib.rs:8:35 [INFO] [stdout] | [INFO] [stdout] 8 | use tracing::{debug, error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Secp256k1`, `SecretKey` [INFO] [stdout] --> tool/src/btc.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | use secp256k1::{PublicKey, Secp256k1, SecretKey}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::builder::Str` [INFO] [stdout] --> tool/src/cli.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use clap::builder::Str; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Args` [INFO] [stdout] --> tool/src/cli.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | use clap::{Args, Parser, Subcommand}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::types::U128` [INFO] [stdout] --> tool/src/cli.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use ethers::types::U128; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::Write` [INFO] [stdout] --> tool/src/encrypt_decrypt.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{fmt::Write, string::String}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `String` is imported redundantly [INFO] [stdout] --> tool/src/encrypt_decrypt.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use std::{fmt::Write, string::String}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] --> /rustc/aa067fb984d36462548bb785da221bfaf38253f0/library/std/src/prelude/mod.rs:144:13 [INFO] [stdout] | [INFO] [stdout] = note: the item `String` is already defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bip32::secp256k1::elliptic_curve::weierstrass::add` [INFO] [stdout] --> tool/src/eth.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use bip32::secp256k1::elliptic_curve::weierstrass::add; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::builder::Str` [INFO] [stdout] --> tool/src/eth.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use clap::builder::Str; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::abi::AbiEncode` [INFO] [stdout] --> tool/src/eth.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use ethers::abi::AbiEncode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ethers::utils::hex::ToHex` [INFO] [stdout] --> tool/src/eth.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ethers::utils::hex::ToHex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Address` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:14:19 [INFO] [stdout] | [INFO] [stdout] 14 | core::types::{Address, TransactionRequest}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 15 | etherscan::Client, [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `Address` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TransactionRequest` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | core::types::{Address, TransactionRequest}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | etherscan::Client, [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `TransactionRequest` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Client` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | etherscan::Client, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `Client` is already imported here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `LocalWallet` is imported redundantly [INFO] [stdout] --> tool/src/eth.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | prelude::*, [INFO] [stdout] | ---------- the item `LocalWallet` is already imported here [INFO] [stdout] 17 | signers::LocalWallet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> tool/src/eth.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_to_string` [INFO] [stdout] --> tool/src/file_handle.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fs::{read_to_string, File}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Empty` [INFO] [stdout] --> tool/src/http_request.rs:2:31 [INFO] [stdout] | [INFO] [stdout] 2 | use http_body_util::{BodyExt, Empty}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `serde_json` is imported redundantly [INFO] [stdout] --> tool/src/http_request.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use serde_json; [INFO] [stdout] | ^^^^^^^^^^ the item `serde_json` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tool/src/http_request.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let mut res = sender.send_request(req).await?; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tool/src/http_request.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let mut res = sender.send_request(req).await?; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bsc_eth` [INFO] [stdout] --> tool/src/file_handle.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | let bsc_eth = u128::from_str_radix(captures.get(4).unwrap().as_str(), 10).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bsc_eth` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text` [INFO] [stdout] --> tool/src/lib.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 146 | fn reverse(text: String, code: String) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> tool/src/lib.rs:146:26 [INFO] [stdout] | [INFO] [stdout] 146 | fn reverse(text: String, code: String) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `file_handle::Account` is more private than the item `format_line` [INFO] [stdout] --> tool/src/file_handle.rs:40:1 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn format_line(line: String, reg: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `format_line` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `file_handle::Account` is only usable at visibility `pub(self)` [INFO] [stdout] --> tool/src/file_handle.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | struct Account { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P2PKH_PREFIX` is never used [INFO] [stdout] --> tool/src/btc.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const P2PKH_PREFIX: u8 = 0x00; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `BoxBody` is never used [INFO] [stdout] --> tool/src/http_request.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 11 | type BoxBody = http_body_util::combinators::BoxBody; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `EthSubCommands` should have a snake case name [INFO] [stdout] --> tool/src/lib.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | Eth(EthSubCommands) => handle_eth_sub_command(EthSubCommands).await, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `eth_sub_commands` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `BtcSubCommands` should have a snake case name [INFO] [stdout] --> tool/src/lib.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | Btc(BtcSubCommands) => handle_btc_sub_command(BtcSubCommands), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `btc_sub_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tool/src/util.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | write!(result, "{:02x}", a); [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)]` on by default [INFO] [stdout] = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bsc_eth` [INFO] [stdout] --> tool/src/file_handle.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | let bsc_eth = u128::from_str_radix(captures.get(4).unwrap().as_str(), 10).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bsc_eth` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text` [INFO] [stdout] --> tool/src/lib.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 146 | fn reverse(text: String, code: String) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_text` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> tool/src/lib.rs:146:26 [INFO] [stdout] | [INFO] [stdout] 146 | fn reverse(text: String, code: String) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `file_handle::Account` is more private than the item `file_handle::format_line` [INFO] [stdout] --> tool/src/file_handle.rs:40:1 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn format_line(line: String, reg: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `file_handle::format_line` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `file_handle::Account` is only usable at visibility `pub(self)` [INFO] [stdout] --> tool/src/file_handle.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | struct Account { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P2PKH_PREFIX` is never used [INFO] [stdout] --> tool/src/btc.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const P2PKH_PREFIX: u8 = 0x00; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `BoxBody` is never used [INFO] [stdout] --> tool/src/http_request.rs:11:6 [INFO] [stdout] | [INFO] [stdout] 11 | type BoxBody = http_body_util::combinators::BoxBody; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `EthSubCommands` should have a snake case name [INFO] [stdout] --> tool/src/lib.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | Eth(EthSubCommands) => handle_eth_sub_command(EthSubCommands).await, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `eth_sub_commands` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `BtcSubCommands` should have a snake case name [INFO] [stdout] --> tool/src/lib.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | Btc(BtcSubCommands) => handle_btc_sub_command(BtcSubCommands), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `btc_sub_commands` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tool/src/btc.rs:221:9 [INFO] [stdout] | [INFO] [stdout] 221 | bip32_to_address(xpub_key, path); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 221 | let _ = bip32_to_address(xpub_key, path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tool/src/util.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | write!(result, "{:02x}", a); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 22s [INFO] running `Command { std: "docker" "inspect" "5f7e56a6c7cf2ab5887fbcdd6546804fac6a1b325a875471b9df06c31c0609a9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5f7e56a6c7cf2ab5887fbcdd6546804fac6a1b325a875471b9df06c31c0609a9", kill_on_drop: false }` [INFO] [stdout] 5f7e56a6c7cf2ab5887fbcdd6546804fac6a1b325a875471b9df06c31c0609a9 [INFO] checking Trackerming/study-rust-example against try#707d6562f55b55a7aab4ab3a904997116b358314 for pr-122470 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTrackerming%2Fstudy-rust-example" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Trackerming/study-rust-example on toolchain 707d6562f55b55a7aab4ab3a904997116b358314 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+707d6562f55b55a7aab4ab3a904997116b358314" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Trackerming/study-rust-example [INFO] finished tweaking git repo https://github.com/Trackerming/study-rust-example [INFO] tweaked toml for git repo https://github.com/Trackerming/study-rust-example written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Trackerming/study-rust-example 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" "+707d6562f55b55a7aab4ab3a904997116b358314" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /workspace/builds/worker-4-tc2/source/study-example/Cargo.toml [INFO] [stderr] workspace: /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] [stderr] warning: /workspace/builds/worker-4-tc2/source/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.linker [INFO] [stderr] warning: /workspace/builds/worker-4-tc2/source/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.rustflags [INFO] [stderr] warning: /workspace/builds/worker-4-tc2/source/Cargo.toml: unused manifest key: workspace.package.name [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+707d6562f55b55a7aab4ab3a904997116b358314" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c9a00b044d2925fef36e44ebc2f65aa893817d5aa708c730c27cc961570e4c8c [INFO] running `Command { std: "docker" "start" "-a" "c9a00b044d2925fef36e44ebc2f65aa893817d5aa708c730c27cc961570e4c8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c9a00b044d2925fef36e44ebc2f65aa893817d5aa708c730c27cc961570e4c8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c9a00b044d2925fef36e44ebc2f65aa893817d5aa708c730c27cc961570e4c8c", kill_on_drop: false }` [INFO] [stdout] c9a00b044d2925fef36e44ebc2f65aa893817d5aa708c730c27cc961570e4c8c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+707d6562f55b55a7aab4ab3a904997116b358314" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b96dc5a65e11b3ae5280bd75402a6f4393b08020e96d5ced93eb97463f1dd3a1 [INFO] running `Command { std: "docker" "start" "-a" "b96dc5a65e11b3ae5280bd75402a6f4393b08020e96d5ced93eb97463f1dd3a1", kill_on_drop: false }` [INFO] [stderr] warning: profiles for the non root package will be ignored, specify profiles at the workspace root: [INFO] [stderr] package: /opt/rustwide/workdir/study-example/Cargo.toml [INFO] [stderr] workspace: /opt/rustwide/workdir/Cargo.toml [INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: workspace.package.name [INFO] [stderr] warning: /opt/rustwide/workdir/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.linker [INFO] [stderr] warning: /opt/rustwide/workdir/games/Cargo.toml: unused manifest key: target.x86_64-unknown-linux-musl.rustflags [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Checking value-bag v1.7.0 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling hashbrown v0.14.3 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Compiling winnow v0.5.40 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling thiserror v1.0.57 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling indexmap v2.2.3 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling syn v2.0.49 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Checking getrandom v0.2.12 [INFO] [stderr] Checking itoa v1.0.10 [INFO] [stderr] Compiling ahash v0.8.8 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking zerocopy v0.7.32 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking allocator-api2 v0.2.16 [INFO] [stderr] Checking thread_local v1.1.7 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking parking v2.2.0 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking concurrent-queue v2.4.0 [INFO] [stderr] Checking mio v0.8.10 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Checking ryu v1.0.16 [INFO] [stderr] Compiling serde_json v1.0.113 [INFO] [stderr] Checking arrayvec v0.7.4 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Checking event-listener v4.0.3 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Checking subtle v2.5.0 [INFO] [stderr] Checking futures-lite v2.2.0 [INFO] [stderr] Checking socket2 v0.5.5 [INFO] [stderr] Checking event-listener-strategy v0.4.0 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking regex-automata v0.4.5 [INFO] [stderr] Checking async-lock v3.3.0 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Checking async-task v4.7.0 [INFO] [stderr] Checking fastrand v1.9.0 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking waker-fn v1.1.1 [INFO] [stderr] Checking tracing-log v0.1.4 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Checking unicode-ident v1.0.12 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Checking async-executor v1.8.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking unicode-xid v0.2.4 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking crossbeam-channel v0.5.11 [INFO] [stderr] Compiling uuid v1.7.0 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Checking nonmax v0.5.5 [INFO] [stderr] Checking cpufeatures v0.2.12 [INFO] [stderr] Checking bevy_ptr v0.12.1 [INFO] [stderr] Checking smol_str v0.2.1 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking bevy_tasks v0.12.1 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling zeroize v1.7.0 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Compiling prettyplease v0.2.16 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking chrono v0.4.34 [INFO] [stderr] Compiling rustix v0.38.31 [INFO] [stderr] Checking data-encoding v2.5.0 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Checking event-listener v5.1.0 [INFO] [stderr] Compiling linux-raw-sys v0.4.13 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling bitflags v2.4.2 [INFO] [stderr] Checking event-listener-strategy v0.5.0 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Checking piper v0.2.1 [INFO] [stderr] Checking async-channel v2.2.0 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling thiserror-impl v1.0.57 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling tokio-macros v2.2.0 [INFO] [stderr] Compiling bytemuck_derive v1.5.0 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling bevy_utils_proc_macros v0.12.1 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling rlp-derive v0.1.0 [INFO] [stderr] Compiling pin-project-internal v1.1.4 [INFO] [stderr] Checking bytemuck v1.14.3 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking der v0.7.8 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Checking pin-project v1.1.4 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking blocking v1.5.1 [INFO] [stderr] Checking async-lock v2.8.0 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking raw-window-handle v0.5.2 [INFO] [stderr] Checking rustc-hex v2.1.0 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Checking spki v0.7.3 [INFO] [stderr] Checking ff v0.13.0 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking base16ct v0.2.0 [INFO] [stderr] Checking byte-slice-cast v1.2.2 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Compiling camino v1.1.6 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Compiling semver v1.0.21 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking sec1 v0.7.3 [INFO] [stderr] Checking group v0.13.0 [INFO] [stderr] Checking pkcs8 v0.10.2 [INFO] [stderr] Checking tracing-futures v0.2.5 [INFO] [stderr] Checking crypto-bigint v0.5.5 [INFO] [stderr] Checking codespan-reporting v0.11.1 [INFO] [stderr] Checking pp-rs v0.2.1 [INFO] [stderr] Checking smallvec v1.13.1 [INFO] [stderr] Checking bytes v1.5.0 [INFO] [stderr] Checking parking_lot_core v0.9.9 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking glam v0.24.2 [INFO] [stderr] Compiling toml_datetime v0.6.5 [INFO] [stderr] Checking tokio v1.36.0 [INFO] [stderr] Compiling toml_edit v0.20.7 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Checking erased-serde v0.3.31 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Checking petgraph v0.6.4 [INFO] [stderr] Compiling toml_edit v0.21.1 [INFO] [stderr] Checking rlp v0.5.2 [INFO] [stderr] Checking spirv v0.2.0+1.5.4 [INFO] [stderr] Compiling bevy_macro_utils v0.12.1 [INFO] [stderr] Compiling proc-macro-crate v2.0.0 [INFO] [stderr] Checking bevy_utils v0.12.1 [INFO] [stderr] Checking bevy_math v0.12.1 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Checking libloading v0.7.4 [INFO] [stderr] Checking hexf-parse v0.2.1 [INFO] [stderr] Checking keccak v0.1.5 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Compiling ash v0.37.3+1.3.251 [INFO] [stderr] Compiling khronos-egl v4.1.0 [INFO] [stderr] Checking sha3 v0.10.8 [INFO] [stderr] Checking naga v0.13.0 [INFO] [stderr] Compiling parity-scale-codec-derive v3.6.9 [INFO] [stderr] Compiling bevy_reflect_derive v0.12.1 [INFO] [stderr] Compiling bevy_ecs_macros v0.12.1 [INFO] [stderr] Compiling bevy_derive v0.12.1 [INFO] [stderr] Compiling scale-info-derive v2.10.0 [INFO] [stderr] Compiling proc-macro-crate v3.1.0 [INFO] [stderr] Checking elliptic-curve v0.13.8 [INFO] [stderr] Checking gpu-alloc-types v0.3.0 [INFO] [stderr] Checking gpu-descriptor-types v0.1.2 [INFO] [stderr] Checking rfc6979 v0.4.0 [INFO] [stderr] Checking signature v2.2.0 [INFO] [stderr] Compiling blake3 v1.5.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling async-fs v1.6.0 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking accesskit v0.12.2 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Compiling strum_macros v0.25.3 [INFO] [stderr] Checking parity-scale-codec v3.6.9 [INFO] [stderr] Checking ecdsa v0.16.9 [INFO] [stderr] Checking gpu-descriptor v0.2.4 [INFO] [stderr] Checking gpu-alloc v0.6.0 [INFO] [stderr] Compiling num_enum_derive v0.7.2 [INFO] [stderr] Checking impl-rlp v0.3.0 [INFO] [stderr] Compiling open-fastrlp-derive v0.1.1 [INFO] [stderr] Checking scale-info v2.10.0 [INFO] [stderr] Checking impl-codec v0.6.0 [INFO] [stderr] Checking bevy_reflect v0.12.1 [INFO] [stderr] Checking wgpu-types v0.17.0 [INFO] [stderr] Checking impl-serde v0.4.0 [INFO] [stderr] Checking fixed-hash v0.8.0 [INFO] [stderr] Compiling auto_impl v1.1.2 [INFO] [stderr] Compiling encase_derive_impl v0.6.1 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Checking libloading v0.8.1 [INFO] [stderr] Checking renderdoc-sys v1.0.0 [INFO] [stderr] Checking constant_time_eq v0.3.0 [INFO] [stderr] Checking profiling v1.0.15 [INFO] [stderr] Checking glow v0.12.3 [INFO] [stderr] Checking arrayref v0.3.7 [INFO] [stderr] Compiling thiserror-core v1.0.50 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking k256 v0.13.3 [INFO] [stderr] Compiling bevy_asset_macros v0.12.1 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Checking ron v0.8.1 [INFO] [stderr] Checking uint v0.9.5 [INFO] [stderr] Compiling thiserror-core-impl v1.0.50 [INFO] [stderr] Checking async-broadcast v0.5.1 [INFO] [stderr] Compiling gcc v0.3.55 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.91 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Checking const_soft_float v0.1.4 [INFO] [stderr] Checking png v0.17.13 [INFO] [stderr] Checking primitive-types v0.12.2 [INFO] [stderr] Checking constgebra v0.1.3 [INFO] [stderr] Checking bevy_ecs v0.12.1 [INFO] [stderr] Compiling rust-crypto v0.2.36 [INFO] [stderr] Compiling encase_derive v0.6.1 [INFO] [stderr] Checking ethbloom v0.13.0 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking http v0.2.11 [INFO] [stderr] Checking const-hex v1.11.0 [INFO] [stderr] Checking twox-hash v1.6.3 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Compiling rustls v0.21.10 [INFO] [stderr] Checking const_panic v0.2.8 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Checking regex-syntax v0.7.5 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Checking image v0.24.8 [INFO] [stderr] Checking encase v0.6.1 [INFO] [stderr] Compiling clang-sys v1.7.0 [INFO] [stderr] Checking ruzstd v0.4.0 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking ethereum-types v0.14.1 [INFO] [stderr] Checking hexasphere v9.1.0 [INFO] [stderr] Checking nix v0.24.3 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling bevy_encase_derive v0.12.1 [INFO] [stderr] Compiling bevy_render_macros v0.12.1 [INFO] [stderr] Checking bevy_mikktspace v0.12.1 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking naga_oil v0.10.1 [INFO] [stderr] Checking unicode-normalization v0.1.22 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking ktx2 v0.3.0 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling bumpalo v3.15.0 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Checking rustc-serialize v0.3.25 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Compiling time-macros v0.2.17 [INFO] [stderr] Checking deranged v0.3.11 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Compiling wasm-bindgen-backend v0.2.91 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking wgpu-hal v0.17.2 [INFO] [stderr] Checking bevy_app v0.12.1 [INFO] [stderr] Checking bevy_log v0.12.1 [INFO] [stderr] Checking bevy_core v0.12.1 [INFO] [stderr] Checking bevy_input v0.12.1 [INFO] [stderr] Checking bevy_time v0.12.1 [INFO] [stderr] Checking bevy_hierarchy v0.12.1 [INFO] [stderr] Checking bevy_a11y v0.12.1 [INFO] [stderr] Checking bevy_asset v0.12.1 [INFO] [stderr] Checking cargo-platform v0.1.7 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking bevy_transform v0.12.1 [INFO] [stderr] Checking unicode-bidi v0.3.15 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking bevy_window v0.12.1 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Checking wgpu-core v0.17.1 [INFO] [stderr] Checking time v0.3.34 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking cargo_metadata v0.18.1 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.91 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Checking ethabi v18.0.0 [INFO] [stderr] Checking open-fastrlp v0.1.4 [INFO] [stderr] Checking strum v0.25.0 [INFO] [stderr] Checking num_enum v0.7.2 [INFO] [stderr] Checking tempfile v3.10.0 [INFO] [stderr] Checking tracing-serde v0.1.3 [INFO] [stderr] Checking inout v0.1.3 [INFO] [stderr] Compiling async-stream-impl v0.3.5 [INFO] [stderr] Checking matchers v0.0.1 [INFO] [stderr] Compiling secp256k1-sys v0.8.1 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Compiling home v0.5.9 [INFO] [stderr] Compiling wasm-bindgen v0.2.91 [INFO] [stderr] Compiling bindgen v0.66.1 [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Checking async-stream v0.3.5 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Checking structopt v0.3.26 [INFO] [stderr] Checking wgpu v0.17.2 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking ethers-core v2.0.13 [INFO] [stderr] Checking tracing-subscriber v0.2.25 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.91 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Checking simple_asn1 v0.6.2 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking bevy_render v0.12.1 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking h2 v0.3.24 [INFO] [stderr] Checking tokio-stream v0.1.14 [INFO] [stderr] Compiling blst v0.3.11 [INFO] [stderr] Checking crossbeam-queue v0.3.11 [INFO] [stderr] Checking atoi v0.3.3 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Checking radsort v0.1.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking anstyle-parse v0.2.3 [INFO] [stderr] Checking mini-redis v0.4.1 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Compiling serde_spanned v0.6.5 [INFO] [stderr] Checking bs58 v0.5.0 [INFO] [stderr] Checking ripemd v0.1.3 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Checking webpki-roots v0.25.4 [INFO] [stderr] Compiling async-trait v0.1.77 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Checking hyper v0.14.28 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Checking anstyle v1.0.6 [INFO] [stderr] Checking anstyle-query v1.0.2 [INFO] [stderr] Compiling winnow v0.6.1 [INFO] [stderr] Checking anstream v0.6.12 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling toml_edit v0.22.6 [INFO] [stderr] Checking js-sys v0.3.68 [INFO] [stderr] Checking bevy_core_pipeline v0.12.1 [INFO] [stderr] Checking secp256k1 v0.27.0 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Checking threadpool v1.8.1 [INFO] [stderr] Checking euclid v0.22.9 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking svg_fmt v0.4.1 [INFO] [stderr] Checking spin v0.5.2 [INFO] [stderr] Compiling indenter v0.3.3 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Compiling anyhow v1.0.79 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Checking tap v1.0.1 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Checking ttf-parser v0.20.0 [INFO] [stderr] Checking untrusted v0.7.1 [INFO] [stderr] Checking strsim v0.11.0 [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Compiling winit v0.28.7 [INFO] [stderr] Checking clap_builder v4.5.1 [INFO] [stderr] Compiling c-kzg v0.1.1 [INFO] [stderr] Checking guillotiere v0.6.2 [INFO] [stderr] Compiling toml v0.8.10 [INFO] [stderr] Checking reqwest v0.11.24 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Checking gloo-timers v0.2.6 [INFO] [stderr] Checking wyz v0.5.1 [INFO] [stderr] Checking coins-core v0.8.7 [INFO] [stderr] Checking owned_ttf_parser v0.20.0 [INFO] [stderr] Checking tungstenite v0.20.1 [INFO] [stderr] Checking redis-simple v0.2.2 (/opt/rustwide/workdir/redis-simple) [INFO] [stderr] Checking salsa20 v0.10.2 [INFO] [stderr] Checking pem v1.1.1 [INFO] [stderr] Checking http v1.0.0 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Checking pbkdf2 v0.12.2 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Compiling clap_derive v4.5.0 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Checking rectangle-pack v0.4.2 [INFO] [stderr] Compiling dunce v1.0.4 [INFO] [stderr] Compiling inflections v1.1.1 [INFO] [stderr] Compiling cpal v0.15.2 [INFO] [stderr] Compiling bitcoin-internals v0.2.0 [INFO] [stderr] Checking funty v2.0.0 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Checking send_wrapper v0.4.0 [INFO] [stderr] Checking ab_glyph v0.2.23 [INFO] [stderr] Checking futures-timer v3.0.2 [INFO] [stderr] Compiling gltf-derive v1.4.0 [INFO] [stderr] Checking bevy_sprite v0.12.1 [INFO] [stderr] Checking bitvec v1.0.1 [INFO] [stderr] Checking inotify v0.10.2 [INFO] [stderr] Checking hashers v1.0.1 [INFO] [stderr] Checking scrypt v0.10.0 [INFO] [stderr] Checking jsonwebtoken v8.3.0 [INFO] [stderr] Checking alsa v0.7.1 [INFO] [stderr] Checking tokio-tungstenite v0.20.1 [INFO] [stderr] Checking coins-bip32 v0.8.7 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking ctr v0.9.2 [INFO] [stderr] Checking enr v0.9.1 [INFO] [stderr] Checking clap v4.5.1 [INFO] [stderr] Checking nix v0.27.1 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Compiling hello_macro_derive v0.1.0 [INFO] [stderr] Checking ogg v0.8.0 [INFO] [stderr] Compiling secp256k1-sys v0.9.2 [INFO] [stderr] Checking dasp_sample v0.11.0 [INFO] [stderr] Compiling gilrs v0.10.4 [INFO] [stderr] Checking xi-unicode v0.3.0 [INFO] [stderr] Checking glyph_brush_layout v0.2.3 [INFO] [stderr] Checking lewton v0.10.2 [INFO] [stderr] Checking ethers-contract-abigen v2.0.13 [INFO] [stderr] Checking gilrs-core v0.5.10 [INFO] [stderr] Checking coins-bip39 v0.8.7 [INFO] [stderr] Checking eth-keystore v0.5.0 [INFO] [stderr] Checking ethers-providers v2.0.13 [INFO] [stderr] Checking gltf-json v1.4.0 [INFO] [stderr] Checking http-body v1.0.0 [INFO] [stderr] Checking bevy_pbr v0.12.1 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Compiling hex_lit v0.1.1 [INFO] [stderr] Checking grid v0.10.0 [INFO] [stderr] Checking hex-conservative v0.1.1 [INFO] [stderr] Checking taffy v0.3.18 [INFO] [stderr] Checking bitcoin_hashes v0.13.0 [INFO] [stdout] error[E0277]: the trait bound `f32: From` is not satisfied [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/taffy-0.3.18/src/style_helpers.rs:58:31 [INFO] [stdout] | [INFO] [stdout] 58 | repeated_tracks.push(flex(1.0)); [INFO] [stdout] | ---- ^^^ the trait `From` is not implemented for `f32`, which is required by `{float}: Into` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] = note: required for `f64` to implement `Into` [INFO] [stdout] note: required by a bound in `flex` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/taffy-0.3.18/src/style_helpers.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub fn flex(flex_fraction: Input) -> Output [INFO] [stdout] | ---- required by a bound in this function [INFO] [stdout] 99 | where [INFO] [stdout] 100 | Input: Into + Copy, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `flex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `taffy` (lib) due to 2 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "b96dc5a65e11b3ae5280bd75402a6f4393b08020e96d5ced93eb97463f1dd3a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b96dc5a65e11b3ae5280bd75402a6f4393b08020e96d5ced93eb97463f1dd3a1", kill_on_drop: false }` [INFO] [stdout] b96dc5a65e11b3ae5280bd75402a6f4393b08020e96d5ced93eb97463f1dd3a1