[INFO] cloning repository https://github.com/flamingoodev/rust-learn [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/flamingoodev/rust-learn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamingoodev%2Frust-learn", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamingoodev%2Frust-learn'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 532650d9c30c89e97d3d3a1ff568c509d4754675 [INFO] checking flamingoodev/rust-learn/532650d9c30c89e97d3d3a1ff568c509d4754675 against master#ba7e63b63871a429533c189adbfb1d9a6337e000 for pr-135331-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamingoodev%2Frust-learn" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/flamingoodev/rust-learn [INFO] finished tweaking git repo https://github.com/flamingoodev/rust-learn [INFO] tweaked toml for git repo https://github.com/flamingoodev/rust-learn written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/flamingoodev/rust-learn on toolchain ba7e63b63871a429533c189adbfb1d9a6337e000 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ba7e63b63871a429533c189adbfb1d9a6337e000" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/flamingoodev/rust-learn already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ba7e63b63871a429533c189adbfb1d9a6337e000" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded syn v1.0.93 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+ba7e63b63871a429533c189adbfb1d9a6337e000" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] aba7d633f80b5effbfdf04d4fb21e324ab61587887aa39e1e4041de87eb4fb34 [INFO] running `Command { std: "docker" "start" "-a" "aba7d633f80b5effbfdf04d4fb21e324ab61587887aa39e1e4041de87eb4fb34", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "aba7d633f80b5effbfdf04d4fb21e324ab61587887aa39e1e4041de87eb4fb34", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aba7d633f80b5effbfdf04d4fb21e324ab61587887aa39e1e4041de87eb4fb34", kill_on_drop: false }` [INFO] [stdout] aba7d633f80b5effbfdf04d4fb21e324ab61587887aa39e1e4041de87eb4fb34 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+ba7e63b63871a429533c189adbfb1d9a6337e000" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9d1c58cf11185a1bee9cb868c8f005277619ac43f5280745317e44884f580dfb [INFO] running `Command { std: "docker" "start" "-a" "9d1c58cf11185a1bee9cb868c8f005277619ac43f5280745317e44884f580dfb", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.38 [INFO] [stderr] Compiling libc v0.2.98 [INFO] [stderr] Compiling unicode-xid v0.2.3 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling syn v1.0.93 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling rustversion v1.0.6 [INFO] [stderr] Checking ppv-lite86 v0.2.8 [INFO] [stderr] Compiling heck v0.4.0 [INFO] [stderr] Compiling quote v1.0.18 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Compiling strum_macros v0.24.0 [INFO] [stderr] Checking strum v0.24.0 [INFO] [stderr] Checking rust-learn v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::panic` [INFO] [stdout] --> src/panic/t_panic.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::panic; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | 'inner: loop { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Command` and `Output` [INFO] [stdout] --> src/syntax/t_command.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use std::process::{Command, Output}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/syntax/t_enum.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::panic::Location` [INFO] [stdout] --> src/syntax/t_error.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::panic::Location; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/syntax/t_generic.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/syntax/t_macro.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | (a > b) => { println!("{} < {}", a, b) } [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 11 - (a > b) => { println!("{} < {}", a, b) } [INFO] [stdout] 11 + (a > b) => println!("{} < {}", a, b) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `thread` [INFO] [stdout] --> src/syntax/t_sync.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] 7 | }, [INFO] [stdout] 8 | thread, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Cow` [INFO] [stdout] --> src/syntax/t_turbo_fish.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::Cow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem::size_of_val` [INFO] [stdout] --> src/tests/t_tests.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::mem::size_of_val; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/tests/mod.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | mod t_tests; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | 'inner: loop { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Output` [INFO] [stdout] --> src/syntax/t_command.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use std::process::{Command, Output}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::panic::Location` [INFO] [stdout] --> src/syntax/t_error.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::panic::Location; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/syntax/t_generic.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/syntax/t_macro.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | (a > b) => { println!("{} < {}", a, b) } [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 11 - (a > b) => { println!("{} < {}", a, b) } [INFO] [stdout] 11 + (a > b) => println!("{} < {}", a, b) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Cow` [INFO] [stdout] --> src/syntax/t_turbo_fish.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::Cow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | let x = Operations::Add; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0170]: pattern binding `First` is named the same as one of the variants of the type `rust_quiz::quiz_7::Enum` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ^^^^^ help: to match on the variant, qualify the path: `rust_quiz::quiz_7::Enum::First` [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(bindings_with_variant_name)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0170]: pattern binding `Second` is named the same as one of the variants of the type `rust_quiz::quiz_7::Enum` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ help: to match on the variant, qualify the path: `rust_quiz::quiz_7::Enum::Second` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ----- matches any value [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `First` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_First` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Second` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Second` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `location` [INFO] [stdout] --> src/syntax/t_error.rs:38:18 [INFO] [stdout] | [INFO] [stdout] 38 | Some(location) => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y1` [INFO] [stdout] --> src/syntax/t_smart_pointer.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | let y1 = x.borrow_mut(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_y1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | let num = 42u32; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | let num: u32 = 42; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | let num = 0x2A; // 十六进制 [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let num = 0o106; // 八进制 [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | let num = 3.55f64; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/syntax/t_type.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut mut_arr = [1, 2, 3]; [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 `if_let` is never used [INFO] [stdout] --> src/collections/t_vector.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn if_let() -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/collections/t_vector.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vec_slice` is never used [INFO] [stdout] --> src/collections/t_vector.rs:68:4 [INFO] [stdout] | [INFO] [stdout] 68 | fn vec_slice() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_slice` is never used [INFO] [stdout] --> src/collections/t_vector.rs:93:4 [INFO] [stdout] | [INFO] [stdout] 93 | fn print_slice(s: &[T]) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_slice1` is never used [INFO] [stdout] --> src/collections/t_vector.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn print_slice1(s: T) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `while_let` is never used [INFO] [stdout] --> src/collections/t_vector.rs:111:4 [INFO] [stdout] | [INFO] [stdout] 111 | fn while_let() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/collections/t_vector.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sharpe` is never constructed [INFO] [stdout] --> src/examples/t_struct.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Sharpe { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rectangle` is never constructed [INFO] [stdout] --> src/examples/t_struct.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | struct Rectangle { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Circle` is never constructed [INFO] [stdout] --> src/examples/t_struct.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Circle { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Area` is never used [INFO] [stdout] --> src/examples/t_struct.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub trait Area { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum` is never used [INFO] [stdout] --> src/panic/t_panic.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn sum(a: i32, b: i32) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pri_print_role` is never used [INFO] [stdout] --> src/routes/role.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn pri_print_role() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/routes/role.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pri_print_user` is never used [INFO] [stdout] --> src/routes/user.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn pri_print_user() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hello_world` is never used [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn hello_world() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `comment` is never used [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn comment() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `formatted_print` is never used [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn formatted_print() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UnPrintable` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | struct UnPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DebugPrintable` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | struct DebugPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Structure` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 139 | struct Structure(i32); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Deep` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:143:8 [INFO] [stdout] | [INFO] [stdout] 143 | struct Deep(Structure); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `std_print` is never used [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:146:4 [INFO] [stdout] | [INFO] [stdout] 146 | fn std_print() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MinMax` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:202:8 [INFO] [stdout] | [INFO] [stdout] 202 | struct MinMax(i64, i64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Point2D` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:214:8 [INFO] [stdout] | [INFO] [stdout] 214 | struct Point2D { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_1` is never used [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:227:4 [INFO] [stdout] | [INFO] [stdout] 227 | fn display_1() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `List` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:274:8 [INFO] [stdout] | [INFO] [stdout] 274 | struct List(Vec); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `City` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:316:8 [INFO] [stdout] | [INFO] [stdout] 316 | struct City { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Color` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:345:8 [INFO] [stdout] | [INFO] [stdout] 345 | struct Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format` is never used [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:351:4 [INFO] [stdout] | [INFO] [stdout] 351 | fn format() { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `operator` is never used [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:62:4 [INFO] [stdout] | [INFO] [stdout] 62 | fn operator() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `reverse` is never used [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn reverse(pair: (i32, bool)) -> (bool, i32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Matrix` is never constructed [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | struct Matrix(f32, f32, f32, f32); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tuple` is never used [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:109:4 [INFO] [stdout] | [INFO] [stdout] 109 | fn tuple() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `analyze_slice` is never used [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:165:4 [INFO] [stdout] | [INFO] [stdout] 165 | fn analyze_slice(slice: &[i32]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `arr` is never used [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:170:4 [INFO] [stdout] | [INFO] [stdout] 170 | fn arr() { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Unit` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | struct Unit; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | struct Pair(i32, f32); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 29 | x: f32, [INFO] [stdout] | ^ [INFO] [stdout] 30 | y: f32, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `custom_struct` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn custom_struct() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `WebEvent` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:108:6 [INFO] [stdout] | [INFO] [stdout] 108 | enum WebEvent { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `inspect` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:120:4 [INFO] [stdout] | [INFO] [stdout] 120 | fn inspect(event: WebEvent) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `custom_enum` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn custom_enum() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Subtract` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 158 | enum VeryVerboseEnumOfThingsToDoWithNumbers { [INFO] [stdout] | -------------------------------------- variant in this enum [INFO] [stdout] 159 | Add, [INFO] [stdout] 160 | Subtract, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `run` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:181:8 [INFO] [stdout] | [INFO] [stdout] 180 | impl VeryVerboseEnumOfThingsToDoWithNumbers { [INFO] [stdout] | ------------------------------------------- method in this implementation [INFO] [stdout] 181 | fn run(&self, x: i32, y: i32) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Work` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:199:6 [INFO] [stdout] | [INFO] [stdout] 199 | enum Work { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enum_use` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:204:4 [INFO] [stdout] | [INFO] [stdout] 204 | fn enum_use() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Color` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:247:6 [INFO] [stdout] | [INFO] [stdout] 247 | enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enum_lick_c` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:253:4 [INFO] [stdout] | [INFO] [stdout] 253 | fn enum_lick_c() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `List` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:271:6 [INFO] [stdout] | [INFO] [stdout] 271 | enum List { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `prepend`, `len`, and `stringify` are never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:281:8 [INFO] [stdout] | [INFO] [stdout] 279 | impl List { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 280 | // 创建一个空的 List 实例 [INFO] [stdout] 281 | fn new() -> List { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | fn prepend(self, elem: u32) -> List { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 293 | fn len(&self) -> u32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 308 | fn stringify(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `list` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:322:4 [INFO] [stdout] | [INFO] [stdout] 322 | fn list() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `LANGUAGE` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 351 | static LANGUAGE: &'static str = "Rust"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `THRESHOLD` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:352:7 [INFO] [stdout] | [INFO] [stdout] 352 | const THRESHOLD: i32 = 10; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_big` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:354:4 [INFO] [stdout] | [INFO] [stdout] 354 | fn is_big(n: i32) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `variable_bindings` is never used [INFO] [stdout] --> src/rust_by_example/d_variable_bindings.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn variable_bindings() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mut_variable` is never used [INFO] [stdout] --> src/rust_by_example/d_variable_bindings.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn mut_variable() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `variable_scope` is never used [INFO] [stdout] --> src/rust_by_example/d_variable_bindings.rs:58:4 [INFO] [stdout] | [INFO] [stdout] 58 | fn variable_scope() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `variable_declare` is never used [INFO] [stdout] --> src/rust_by_example/d_variable_bindings.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn variable_declare() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `variable_freeze` is never used [INFO] [stdout] --> src/rust_by_example/d_variable_bindings.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn variable_freeze() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `types` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn types() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `literals` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn literals() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `inference` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:107:4 [INFO] [stdout] | [INFO] [stdout] 107 | fn inference() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `NanoSecond` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:133:6 [INFO] [stdout] | [INFO] [stdout] 133 | type NanoSecond = u64; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Inch` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:134:6 [INFO] [stdout] | [INFO] [stdout] 134 | type Inch = u64; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `u64_t` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:138:6 [INFO] [stdout] | [INFO] [stdout] 138 | type u64_t = u64; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `alias` is never used [INFO] [stdout] --> src/rust_by_example/e_types.rs:141:4 [INFO] [stdout] | [INFO] [stdout] 141 | fn alias() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Number` is never constructed [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct Number { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `from_trait` is never used [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn from_trait() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Number1` is never constructed [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | struct Number1 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `into` is never used [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn into() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EvenNumber` is never constructed [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | struct EvenNumber(i32); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_from` is never used [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:92:4 [INFO] [stdout] | [INFO] [stdout] 92 | fn try_from() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Circle` is never constructed [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | struct Circle { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_string` is never used [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn to_string() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `from_str` is never used [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn from_str() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `t0` is never used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn t0() { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `t1` is never used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn t1() { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `t2` is never used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn t2() { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `if_else` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn if_else() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `flow_loop` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn flow_loop() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `label_loop` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn label_loop() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fizz_buzz` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn fizz_buzz() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `for_fizz_buzz` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:161:4 [INFO] [stdout] | [INFO] [stdout] 161 | fn for_fizz_buzz() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `for_fizz_buzz_1` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:184:4 [INFO] [stdout] | [INFO] [stdout] 184 | fn for_fizz_buzz_1() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `for_iter` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:208:4 [INFO] [stdout] | [INFO] [stdout] 208 | fn for_iter() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `for_iter_1` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:229:4 [INFO] [stdout] | [INFO] [stdout] 229 | fn for_iter_1() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `for_iter_2` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:242:4 [INFO] [stdout] | [INFO] [stdout] 242 | fn for_iter_2() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `flow_match` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:261:4 [INFO] [stdout] | [INFO] [stdout] 261 | fn flow_match() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `destructuring_tuples` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:307:4 [INFO] [stdout] | [INFO] [stdout] 307 | fn destructuring_tuples() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `destructuring_enum` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:340:4 [INFO] [stdout] | [INFO] [stdout] 340 | fn destructuring_enum() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `destructuring_ref` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:369:4 [INFO] [stdout] | [INFO] [stdout] 369 | fn destructuring_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `destructuring_struct` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:421:4 [INFO] [stdout] | [INFO] [stdout] 421 | fn destructuring_struct() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_divisible_by` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn is_divisible_by(lhs: u32, rhs: u32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fizzbuzz` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn fizzbuzz(n: u32) -> () { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fizzbuzz_to` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn fizzbuzz_to(n: u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Point` is never constructed [INFO] [stdout] --> src/rust_by_example/i_functions.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | struct Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `origin` and `new` are never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 56 | impl Point { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | fn origin() -> Point { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn new(x: f64, y: f64) -> Point { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rectangle` is never constructed [INFO] [stdout] --> src/rust_by_example/i_functions.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | struct Rectangle { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `area`, `perimeter`, and `translate` are never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl Rectangle { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | fn area(&self) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | fn perimeter(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn translate(&mut self, x: f64, y: f64) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/rust_by_example/i_functions.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | struct Pair(Box, Box); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `destroy` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 109 | impl Pair { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 112 | fn destroy(self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `S` is never constructed [INFO] [stdout] --> src/rust_quiz/quiz_18.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct S { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `f` is never used [INFO] [stdout] --> src/rust_quiz/quiz_18.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl S { [INFO] [stdout] | ------ method in this implementation [INFO] [stdout] 9 | fn f(&self) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `S` is never constructed [INFO] [stdout] --> src/rust_quiz/quiz_3.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct S { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `S` is never used [INFO] [stdout] --> src/rust_quiz/quiz_3.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const S: S = S { x: 2 }; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Enum` is never used [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Enum { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `p` is never used [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl Enum { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 11 | fn p(self) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_master_pointer` is never used [INFO] [stdout] --> src/smartpointer/t_smart_pointer.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn test_master_pointer() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `age` is never used [INFO] [stdout] --> src/syntax/t_bind.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn age() -> u32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `math` is never used [INFO] [stdout] --> src/syntax/t_closure.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn math i32>(op: F) -> i32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/syntax/t_closure.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call` is never used [INFO] [stdout] --> src/syntax/t_closure.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn call(f: F) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Color` is never used [INFO] [stdout] --> src/syntax/t_enum.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 12 | enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `math` is never used [INFO] [stdout] --> src/syntax/t_function.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn math(op: fn(i32, i32) -> i32, a: i32, b: i32) -> i32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sum` is never used [INFO] [stdout] --> src/syntax/t_function.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn sum(a: i32, b: i32) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `product` is never used [INFO] [stdout] --> src/syntax/t_function.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn product(a: i32, b: i32) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mat` is never used [INFO] [stdout] --> src/syntax/t_function.rs:16:4 [INFO] [stdout] | [INFO] [stdout] 16 | fn mat(op: fn(i32, i32) -> i32, a: i32, b: i32) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hello` is never used [INFO] [stdout] --> src/syntax/t_function.rs:20:4 [INFO] [stdout] | [INFO] [stdout] 20 | fn hello() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_len` is never used [INFO] [stdout] --> src/syntax/t_function.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | const fn init_len() -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `A` is never constructed [INFO] [stdout] --> src/syntax/t_generic.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | struct A { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `B` is never constructed [INFO] [stdout] --> src/syntax/t_generic.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | struct B { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/syntax/t_generic.rs:74:4 [INFO] [stdout] | [INFO] [stdout] 74 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `square` is never used [INFO] [stdout] --> src/syntax/t_generic.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn square>(x: T, y: T) -> T { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `square1` is never used [INFO] [stdout] --> src/syntax/t_generic.rs:105:4 [INFO] [stdout] | [INFO] [stdout] 105 | fn square1>(x: T, y: T) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cmp` is never used [INFO] [stdout] --> src/syntax/t_macro.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn cmp(a: i32, b: i32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `inverse` is never used [INFO] [stdout] --> src/syntax/t_option.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn inverse(number: f64) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `double` is never used [INFO] [stdout] --> src/syntax/t_option.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn double(number: f64) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `none` is never used [INFO] [stdout] --> src/syntax/t_option.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn none(number: f64) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `square` is never used [INFO] [stdout] --> src/syntax/t_result.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn square(number_str: &str) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `ParseResult` is never used [INFO] [stdout] --> src/syntax/t_result.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 34 | type ParseResult = Result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `square_1` is never used [INFO] [stdout] --> src/syntax/t_result.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn square_1(number_str: &str) -> ParseResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Test` is never constructed [INFO] [stdout] --> src/syntax/t_size.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Test<'a> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `abs_sum` is never used [INFO] [stdout] --> src/syntax/t_smart_pointer.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn abs_sum(ns: &[i32]) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `stark` is never used [INFO] [stdout] --> src/syntax/t_string.rs:54:4 [INFO] [stdout] | [INFO] [stdout] 54 | fn stark() -> &'static str { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Book` is never constructed [INFO] [stdout] --> src/syntax/t_struct.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | struct Book<'a> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BookMove` is never constructed [INFO] [stdout] --> src/syntax/t_struct.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct BookMove { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Lock` is never constructed [INFO] [stdout] --> src/syntax/t_sync.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct Lock { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `lock` are never used [INFO] [stdout] --> src/syntax/t_sync.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl Lock { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 29 | pub fn new(data: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn lock(&self, op: impl FnOnce(&mut T)) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `turbo_fish` is never used [INFO] [stdout] --> src/syntax/t_turbo_fish.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn turbo_fish() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: path statement with no effect [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | x; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(path_statements)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | x + 1; [INFO] [stdout] | ^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 17 | let _ = x + 1; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | 2 * x; [INFO] [stdout] | ^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 38 | let _ = 2 * x; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `First` should have a snake case name [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `first` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Second` should have a snake case name [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `second` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0170`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-learn` (lib) due to 2 previous errors; 165 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | let x = Operations::Add; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/rust_quiz/quiz_3.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | let v = &mut S; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/rust_quiz/quiz_3.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const S: S = S { x: 2 }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(const_item_mutation)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: attempting to modify a `const` item [INFO] [stdout] --> src/rust_quiz/quiz_3.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | S.x += 1; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary; the original `const` item will not be modified [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/rust_quiz/quiz_3.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const S: S = S { x: 2 }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0170]: pattern binding `First` is named the same as one of the variants of the type `rust_quiz::quiz_7::Enum` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ^^^^^ help: to match on the variant, qualify the path: `rust_quiz::quiz_7::Enum::First` [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(bindings_with_variant_name)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0170]: pattern binding `Second` is named the same as one of the variants of the type `rust_quiz::quiz_7::Enum` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ help: to match on the variant, qualify the path: `rust_quiz::quiz_7::Enum::Second` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ----- matches any value [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `First` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_First` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `Second` [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Second` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/syntax/t_closure.rs:111:26 [INFO] [stdout] | [INFO] [stdout] 111 | let incr_x = move || x += 1; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: did you mean to capture by reference instead? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `location` [INFO] [stdout] --> src/syntax/t_error.rs:38:18 [INFO] [stdout] | [INFO] [stdout] 38 | Some(location) => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a reference to a function item does not give a function pointer [INFO] [stdout] --> src/syntax/t_function.rs:49:32 [INFO] [stdout] | [INFO] [stdout] 49 | let addr = format!("{:p}", &fn_ptr); [INFO] [stdout] | ^^^^^^^ help: cast `hello` to obtain a function pointer: `hello as fn()` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_item_references)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y1` [INFO] [stdout] --> src/syntax/t_smart_pointer.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | let y1 = x.borrow_mut(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_y1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/syntax/t_string.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let mut x = 'T'; [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: `num` [INFO] [stdout] --> src/syntax/t_type.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | let num = 42u32; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | let num: u32 = 42; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | let num = 0x2A; // 十六进制 [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | let num = 0o106; // 八进制 [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num` [INFO] [stdout] --> src/syntax/t_type.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | let num = 3.55f64; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/syntax/t_type.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut mut_arr = [1, 2, 3]; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pri_print_role` is never used [INFO] [stdout] --> src/routes/role.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn pri_print_role() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/routes/role.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pri_print_user` is never used [INFO] [stdout] --> src/routes/user.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn pri_print_user() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UnPrintable` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | struct UnPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DebugPrintable` is never constructed [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | struct DebugPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:139:18 [INFO] [stdout] | [INFO] [stdout] 139 | struct Structure(i32); [INFO] [stdout] | --------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `Structure` 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] --> src/rust_by_example/a_hello_world.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | struct Deep(Structure); [INFO] [stdout] | ---- ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `Deep` 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 `red`, `green`, and `blue` are never read [INFO] [stdout] --> src/rust_by_example/a_hello_world.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 345 | struct Color { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 346 | red: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] 347 | green: u8, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 348 | blue: u8, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Color` 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`, `2`, and `3` are never read [INFO] [stdout] --> src/rust_by_example/b_primitives.rs:107:15 [INFO] [stdout] | [INFO] [stdout] 107 | struct Matrix(f32, f32, f32, f32); [INFO] [stdout] | ------ ^^^ ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `Matrix` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `age` are never read [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | struct Person { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 17 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | age: u8, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Person` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Subtract` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 158 | enum VeryVerboseEnumOfThingsToDoWithNumbers { [INFO] [stdout] | -------------------------------------- variant in this enum [INFO] [stdout] 159 | Add, [INFO] [stdout] 160 | Subtract, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `run` is never used [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:181:8 [INFO] [stdout] | [INFO] [stdout] 180 | impl VeryVerboseEnumOfThingsToDoWithNumbers { [INFO] [stdout] | ------------------------------------------- method in this implementation [INFO] [stdout] 181 | fn run(&self, x: i32, y: i32) -> i32 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Soldier` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 199 | enum Work { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] 200 | Civilian, [INFO] [stdout] 201 | Soldier, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Green` is never constructed [INFO] [stdout] --> src/rust_by_example/c_custom_types.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 247 | enum Color { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 248 | Red = 0xff0000, [INFO] [stdout] 249 | Green = 0x00ff00, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 23 | struct Number { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 24 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Number` 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 `value` is never read [INFO] [stdout] --> src/rust_by_example/f_conversion.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 49 | struct Number1 { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 50 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Number1` 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 `t0` is never used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn t0() { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `t1` is never used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn t1() { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `label_loop` is never used [INFO] [stdout] --> src/rust_by_example/h_flow_of_control.rs:83:4 [INFO] [stdout] | [INFO] [stdout] 83 | fn label_loop() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Point` is never constructed [INFO] [stdout] --> src/rust_by_example/i_functions.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | struct Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `origin` and `new` are never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 56 | impl Point { [INFO] [stdout] | ---------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 60 | fn origin() -> Point { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn new(x: f64, y: f64) -> Point { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rectangle` is never constructed [INFO] [stdout] --> src/rust_by_example/i_functions.rs:70:8 [INFO] [stdout] | [INFO] [stdout] 70 | struct Rectangle { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `area`, `perimeter`, and `translate` are never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 75 | impl Rectangle { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 79 | fn area(&self) -> f64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | fn perimeter(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn translate(&mut self, x: f64, y: f64) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Pair` is never constructed [INFO] [stdout] --> src/rust_by_example/i_functions.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | struct Pair(Box, Box); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `destroy` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:112:8 [INFO] [stdout] | [INFO] [stdout] 109 | impl Pair { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 112 | fn destroy(self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/rust_by_example/i_functions.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `f` is never read [INFO] [stdout] --> src/rust_quiz/quiz_18.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | struct S { [INFO] [stdout] | - field in this struct [INFO] [stdout] 5 | f: fn(), [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `First` and `Second` are never constructed [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | enum Enum { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 6 | First, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 7 | Second, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Green` is never constructed [INFO] [stdout] --> src/syntax/t_enum.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 12 | enum Color { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 24 | Green(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Color` 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 `A` is never constructed [INFO] [stdout] --> src/syntax/t_generic.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | struct A { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `B` is never constructed [INFO] [stdout] --> src/syntax/t_generic.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | struct B { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main` is never used [INFO] [stdout] --> src/syntax/t_generic.rs:74:4 [INFO] [stdout] | [INFO] [stdout] 74 | fn main() { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Test` is never constructed [INFO] [stdout] --> src/syntax/t_size.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Test<'a> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `abs_sum` is never used [INFO] [stdout] --> src/syntax/t_smart_pointer.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn abs_sum(ns: &[i32]) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `isbn` and `version` are never read [INFO] [stdout] --> src/syntax/t_struct.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 2 | struct Book<'a> { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 3 | name: &'a str, [INFO] [stdout] 4 | isbn: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 5 | version: i32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Book` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BookMove` is never constructed [INFO] [stdout] --> src/syntax/t_struct.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct BookMove { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: path statement with no effect [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | x; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(path_statements)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | x + 1; [INFO] [stdout] | ^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 17 | let _ = x + 1; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/rust_by_example/g_expressions.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | 2 * x; [INFO] [stdout] | ^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 38 | let _ = 2 * x; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `First` should have a snake case name [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | First => print!("1"), [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case (notice the capitalization): `first` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Second` should have a snake case name [INFO] [stdout] --> src/rust_quiz/quiz_7.rs:14:13 [INFO] [stdout] | [INFO] [stdout] 14 | Second => print!("2"), [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `second` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0170`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-learn` (lib test) due to 2 previous errors; 63 warnings emitted [INFO] running `Command { std: "docker" "inspect" "9d1c58cf11185a1bee9cb868c8f005277619ac43f5280745317e44884f580dfb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9d1c58cf11185a1bee9cb868c8f005277619ac43f5280745317e44884f580dfb", kill_on_drop: false }` [INFO] [stdout] 9d1c58cf11185a1bee9cb868c8f005277619ac43f5280745317e44884f580dfb