[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] a76b02ef85ebb7da7bfff7cd69fabbb832fa2f3b [INFO] testing flamingoodev/rust-learn against beta-2021-09-08 for beta-1.56-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamingoodev%2Frust-learn" "/workspace/builds/worker-18/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-18/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/flamingoodev/rust-learn on toolchain beta-2021-09-08 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [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-18/source/Cargo.toml [INFO] crate git repo https://github.com/flamingoodev/rust-learn already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a738dd04067092ba0706e5b4512f195669cbaa01447b275ded0a9f71fd3b061e [INFO] running `Command { std: "docker" "start" "-a" "a738dd04067092ba0706e5b4512f195669cbaa01447b275ded0a9f71fd3b061e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a738dd04067092ba0706e5b4512f195669cbaa01447b275ded0a9f71fd3b061e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a738dd04067092ba0706e5b4512f195669cbaa01447b275ded0a9f71fd3b061e", kill_on_drop: false }` [INFO] [stdout] a738dd04067092ba0706e5b4512f195669cbaa01447b275ded0a9f71fd3b061e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 637a39380a45aabebdf61c0172b6f411adb7237dc2bb9a61344b90e26b5b9a08 [INFO] running `Command { std: "docker" "start" "-a" "637a39380a45aabebdf61c0172b6f411adb7237dc2bb9a61344b90e26b5b9a08", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.98 [INFO] [stderr] Compiling ppv-lite86 v0.2.8 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling 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 import: `std::io::Error` [INFO] [stdout] --> src/syntax/t_command.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Command`, `Output` [INFO] [stdout] --> src/syntax/t_command.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use std::process::{Command, Output}; [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: 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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [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] [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] = note: `#[warn(unused_variables)]` 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: 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 is never used: `if_let` [INFO] [stdout] --> src/collections/t_vector.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn if_let() -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/collections/t_vector.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `while_let` [INFO] [stdout] --> src/collections/t_vector.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn while_let() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/collections/t_vector.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sum` [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] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pri_print_role` [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 is never used: `pri_print_user` [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 is never used: `test_master_pointer` [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 is never used: `math` [INFO] [stdout] --> src/syntax/t_closure.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | 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:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `math` [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 is never used: `sum` [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 is never used: `product` [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 is never used: `mat` [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 is never used: `hello` [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 is never used: `init_len` [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: function is never used: `square` [INFO] [stdout] --> src/syntax/t_generic.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn square>(x: T, y: T) -> T { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `square1` [INFO] [stdout] --> src/syntax/t_generic.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn square1>(x: T, y: T) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cmp` [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 is never used: `inverse` [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 is never used: `double` [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 is never used: `none` [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 is never used: `square` [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 is never used: `ParseResult` [INFO] [stdout] --> src/syntax/t_result.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | type ParseResult = Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `square_1` [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 is never constructed: `Test` [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 is never used: `abs_sum` [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 is never used: `stark` [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: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.38s [INFO] running `Command { std: "docker" "inspect" "637a39380a45aabebdf61c0172b6f411adb7237dc2bb9a61344b90e26b5b9a08", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "637a39380a45aabebdf61c0172b6f411adb7237dc2bb9a61344b90e26b5b9a08", kill_on_drop: false }` [INFO] [stdout] 637a39380a45aabebdf61c0172b6f411adb7237dc2bb9a61344b90e26b5b9a08 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a5cc476287d89c2c9b79a0ff4053673999f8bef69e5ef5326ee568e239905539 [INFO] running `Command { std: "docker" "start" "-a" "a5cc476287d89c2c9b79a0ff4053673999f8bef69e5ef5326ee568e239905539", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [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 import: `std::io::Error` [INFO] [stdout] --> src/syntax/t_command.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Command`, `Output` [INFO] [stdout] --> src/syntax/t_command.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use std::process::{Command, Output}; [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: 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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [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] [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] = note: `#[warn(unused_variables)]` 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: 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 is never used: `if_let` [INFO] [stdout] --> src/collections/t_vector.rs:57:4 [INFO] [stdout] | [INFO] [stdout] 57 | fn if_let() -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/collections/t_vector.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `while_let` [INFO] [stdout] --> src/collections/t_vector.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn while_let() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/collections/t_vector.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sum` [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] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pri_print_role` [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 is never used: `pri_print_user` [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 is never used: `test_master_pointer` [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 is never used: `math` [INFO] [stdout] --> src/syntax/t_closure.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | 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:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | #[warn(dead_code)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `math` [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 is never used: `sum` [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 is never used: `product` [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 is never used: `mat` [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 is never used: `hello` [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 is never used: `init_len` [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: function is never used: `square` [INFO] [stdout] --> src/syntax/t_generic.rs:27:4 [INFO] [stdout] | [INFO] [stdout] 27 | fn square>(x: T, y: T) -> T { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `square1` [INFO] [stdout] --> src/syntax/t_generic.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn square1>(x: T, y: T) -> T { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cmp` [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 is never used: `inverse` [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 is never used: `double` [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 is never used: `none` [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 is never used: `square` [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] [stderr] Compiling rust-learn v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: type alias is never used: `ParseResult` [INFO] [stdout] --> src/syntax/t_result.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | type ParseResult = Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `square_1` [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 is never constructed: `Test` [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 is never used: `abs_sum` [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 is never used: `stark` [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: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Error` [INFO] [stdout] --> src/syntax/t_command.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Output` [INFO] [stdout] --> src/syntax/t_command.rs:2:29 [INFO] [stdout] | [INFO] [stdout] 2 | use std::process::{Command, Output}; [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: 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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [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] = note: `#[warn(unused_variables)]` 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: 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: 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: 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] [INFO] [stdout] warning: function is never used: `pri_print_role` [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 is never used: `pri_print_user` [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 is never constructed: `Test` [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 is never used: `abs_sum` [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: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.80s [INFO] running `Command { std: "docker" "inspect" "a5cc476287d89c2c9b79a0ff4053673999f8bef69e5ef5326ee568e239905539", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a5cc476287d89c2c9b79a0ff4053673999f8bef69e5ef5326ee568e239905539", kill_on_drop: false }` [INFO] [stdout] a5cc476287d89c2c9b79a0ff4053673999f8bef69e5ef5326ee568e239905539 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c6b68710b79a0093d41f758f25934ee7a01c53a33e8ac85d698a2f367bb489d1 [INFO] running `Command { std: "docker" "start" "-a" "c6b68710b79a0093d41f758f25934ee7a01c53a33e8ac85d698a2f367bb489d1", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused import: `std::panic` [INFO] [stderr] --> src/panic/t_panic.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::panic; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Error` [INFO] [stderr] --> src/syntax/t_command.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::io::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Command`, `Output` [INFO] [stderr] --> src/syntax/t_command.rs:2:20 [INFO] [stderr] | [INFO] [stderr] 2 | use std::process::{Command, Output}; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::panic::Location` [INFO] [stderr] --> src/syntax/t_error.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::panic::Location; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary braces around block return value [INFO] [stderr] --> src/syntax/t_macro.rs:11:20 [INFO] [stderr] | [INFO] [stderr] 11 | (a > b) => { println!("{} < {}", a, b) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::mem::size_of_val` [INFO] [stderr] --> src/tests/t_tests.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::mem::size_of_val; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `location` [INFO] [stderr] --> src/syntax/t_error.rs:38:18 [INFO] [stderr] | [INFO] [stderr] 38 | Some(location) => { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y1` [INFO] [stderr] --> src/syntax/t_smart_pointer.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | let y1 = x.borrow_mut(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_y1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num` [INFO] [stderr] --> src/syntax/t_type.rs:4:9 [INFO] [stderr] | [INFO] [stderr] 4 | let num = 42u32; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num` [INFO] [stderr] --> src/syntax/t_type.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 5 | let num: u32 = 42; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num` [INFO] [stderr] --> src/syntax/t_type.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | let num = 0x2A; // 十六进制 [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num` [INFO] [stderr] --> src/syntax/t_type.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | let num = 0o106; // 八进制 [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num` [INFO] [stderr] --> src/syntax/t_type.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | let num = 3.55f64; [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_num` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/syntax/t_type.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | let mut mut_arr = [1, 2, 3]; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `if_let` [INFO] [stderr] --> src/collections/t_vector.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | fn if_let() -> u8 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/collections/t_vector.rs:56:8 [INFO] [stderr] | [INFO] [stderr] 56 | #[warn(dead_code)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `while_let` [INFO] [stderr] --> src/collections/t_vector.rs:72:4 [INFO] [stderr] | [INFO] [stderr] 72 | fn while_let() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/collections/t_vector.rs:71:8 [INFO] [stderr] | [INFO] [stderr] 71 | #[warn(dead_code)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sum` [INFO] [stderr] --> src/panic/t_panic.rs:2:4 [INFO] [stderr] | [INFO] [stderr] 2 | fn sum(a: i32, b: i32) -> i32 { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `pri_print_role` [INFO] [stderr] --> src/routes/role.rs:8:4 [INFO] [stderr] | [INFO] [stderr] 8 | fn pri_print_role() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/routes/role.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | #[warn(dead_code)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `pri_print_user` [INFO] [stderr] --> src/routes/user.rs:9:4 [INFO] [stderr] | [INFO] [stderr] 9 | fn pri_print_user() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test_master_pointer` [INFO] [stderr] --> src/smartpointer/t_smart_pointer.rs:1:4 [INFO] [stderr] | [INFO] [stderr] 1 | fn test_master_pointer() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `math` [INFO] [stderr] --> src/syntax/t_closure.rs:5:4 [INFO] [stderr] | [INFO] [stderr] 5 | fn math i32>(op: F) -> i32 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/syntax/t_closure.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | #[warn(dead_code)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `math` [INFO] [stderr] --> src/syntax/t_function.rs:3:4 [INFO] [stderr] | [INFO] [stderr] 3 | fn math(op: fn(i32, i32) -> i32, a: i32, b: i32) -> i32 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sum` [INFO] [stderr] --> src/syntax/t_function.rs:7:4 [INFO] [stderr] | [INFO] [stderr] 7 | fn sum(a: i32, b: i32) -> i32 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `product` [INFO] [stderr] --> src/syntax/t_function.rs:11:4 [INFO] [stderr] | [INFO] [stderr] 11 | fn product(a: i32, b: i32) -> i32 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mat` [INFO] [stderr] --> src/syntax/t_function.rs:16:4 [INFO] [stderr] | [INFO] [stderr] 16 | fn mat(op: fn(i32, i32) -> i32, a: i32, b: i32) -> i32 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hello` [INFO] [stderr] --> src/syntax/t_function.rs:20:4 [INFO] [stderr] | [INFO] [stderr] 20 | fn hello() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `init_len` [INFO] [stderr] --> src/syntax/t_function.rs:24:10 [INFO] [stderr] | [INFO] [stderr] 24 | const fn init_len() -> usize { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `square` [INFO] [stderr] --> src/syntax/t_generic.rs:27:4 [INFO] [stderr] | [INFO] [stderr] 27 | fn square>(x: T, y: T) -> T { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `square1` [INFO] [stderr] --> src/syntax/t_generic.rs:31:4 [INFO] [stderr] | [INFO] [stderr] 31 | fn square1>(x: T, y: T) -> T { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cmp` [INFO] [stderr] --> src/syntax/t_macro.rs:9:4 [INFO] [stderr] | [INFO] [stderr] 9 | fn cmp(a: i32, b: i32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inverse` [INFO] [stderr] --> src/syntax/t_option.rs:1:4 [INFO] [stderr] | [INFO] [stderr] 1 | fn inverse(number: f64) -> f64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `double` [INFO] [stderr] --> src/syntax/t_option.rs:5:4 [INFO] [stderr] | [INFO] [stderr] 5 | fn double(number: f64) -> Option { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `none` [INFO] [stderr] --> src/syntax/t_option.rs:9:4 [INFO] [stderr] | [INFO] [stderr] 9 | fn none(number: f64) -> Option { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `square` [INFO] [stderr] --> src/syntax/t_result.rs:30:4 [INFO] [stderr] | [INFO] [stderr] 30 | fn square(number_str: &str) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `ParseResult` [INFO] [stderr] --> src/syntax/t_result.rs:34:1 [INFO] [stderr] | [INFO] [stderr] 34 | type ParseResult = Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `square_1` [INFO] [stderr] --> src/syntax/t_result.rs:36:4 [INFO] [stderr] | [INFO] [stderr] 36 | fn square_1(number_str: &str) -> ParseResult { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Test` [INFO] [stderr] --> src/syntax/t_size.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | struct Test<'a> { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `abs_sum` [INFO] [stderr] --> src/syntax/t_smart_pointer.rs:84:4 [INFO] [stderr] | [INFO] [stderr] 84 | fn abs_sum(ns: &[i32]) -> i32 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `stark` [INFO] [stderr] --> src/syntax/t_string.rs:54:4 [INFO] [stderr] | [INFO] [stderr] 54 | fn stark() -> &'static str { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Error` [INFO] [stderr] --> src/syntax/t_command.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::io::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Output` [INFO] [stderr] --> src/syntax/t_command.rs:2:29 [INFO] [stderr] | [INFO] [stderr] 2 | use std::process::{Command, Output}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: taking a reference to a function item does not give a function pointer [INFO] [stderr] --> src/syntax/t_function.rs:49:32 [INFO] [stderr] | [INFO] [stderr] 49 | let addr = format!("{:p}", &fn_ptr); [INFO] [stderr] | ^^^^^^^ help: cast `hello` to obtain a function pointer: `hello as fn()` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(function_item_references)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/syntax/t_string.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | let mut x = 'T'; [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `pri_print_user` [INFO] [stderr] --> src/routes/user.rs:9:4 [INFO] [stderr] | [INFO] [stderr] 9 | fn pri_print_user() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `rust-learn` (lib) generated 39 warnings [INFO] [stderr] warning: `rust-learn` (lib test) generated 18 warnings (13 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.05s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rust_learn-0ea8f38a26d9637a) [INFO] [stdout] [INFO] [stdout] running 30 tests [INFO] [stdout] total 40 [INFO] [stdout] drwxr-xr-x 6 root root 4096 Sep 12 06:08 . [INFO] [stdout] drwxr-xr-x 6 root root 4096 Sep 12 06:10 .. [INFO] [stdout] drwxr-xr-x 8 root root 4096 Sep 12 06:08 .git [INFO] [stdout] -rw-r--r-- 1 root root 344 Sep 12 06:08 .gitignore [INFO] [stdout] drwxr-xr-x 2 root root 4096 Sep 12 06:08 .idea [INFO] [stdout] -rw-r--r-- 1 root root 2174 Sep 12 06:08 Cargo.lock [INFO] [stdout] -rw-r--r-- 1 root root 145 Sep 12 06:08 Cargo.toml [INFO] [stdout] -rw-r--r-- 1 root root 27 Sep 12 06:08 README.md [INFO] [stdout] drwxr-xr-x 11 root root 4096 Sep 12 06:08 src [INFO] [stdout] drwxr-xr-x 3 root root 4096 Sep 12 06:08 tests [INFO] [stdout] test collections::t_vector::test_if_let ... ok [INFO] [stdout] test collections::t_vector::test_while_let ... ok [INFO] [stdout] test examples::t_struct::t_sharpe_test ... ok [INFO] [stdout] test syntax::t_closure::t_math ... ok [INFO] [stdout] test syntax::t_closure::t_two ... ok [INFO] [stdout] test smartpointer::t_smart_pointer::t_test_master_pointer ... ok [INFO] [stdout] test syntax::t_function::t_init_len ... ok [INFO] [stdout] test syntax::t_function::t_math ... ok [INFO] [stdout] test syntax::t_generic::test_square ... ok [INFO] [stdout] test syntax::t_option::t_option_test ... ok [INFO] [stdout] test syntax::t_macro::t_macro ... ok [INFO] [stdout] test syntax::t_result::t_result_handle ... ok [INFO] [stdout] test syntax::t_result::t_result_test ... ok [INFO] [stdout] test syntax::t_command::t_command_test ... ok [INFO] [stdout] test syntax::t_function::t_op ... ok [INFO] [stdout] test syntax::t_smart_pointer::test_1 ... ok [INFO] [stdout] test syntax::t_string::t_char ... ok [INFO] [stdout] test syntax::t_struct::t_struct_move_test ... ok [INFO] [stdout] test syntax::t_result::t_result_type ... ok [INFO] [stdout] test syntax::t_struct::t_struct_test ... ok [INFO] [stdout] test tests::t_tests::test_it_works ... ok [INFO] [stdout] test tests::t_tests::test_iter ... ok [INFO] [stdout] test syntax::t_type::test_t_type ... ok [INFO] [stdout] test tests::t_tests::test_result ... ok [INFO] [stdout] test tests::t_tests::it_works ... ok [INFO] [stdout] test syntax::t_thread::t_thread2_test ... ok [INFO] [stdout] test tests::t_tests::test_size ... ok [INFO] [stdout] test panic::t_panic::t_panic ... ok [INFO] [stdout] test tests::t_tests::another - should panic ... ok [INFO] [stdout] test syntax::t_error::test_panic_hook ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rust_learn-c91087e42830839b) [INFO] [stdout] [INFO] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-1d51e79bddf893da) [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests rust-learn [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test it_works ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] warning: unnecessary braces around block return value [INFO] [stderr] --> /opt/rustwide/workdir/src/syntax/t_macro.rs:11:20 [INFO] [stderr] | [INFO] [stderr] 11 | (a > b) => { println!("{} < {}", a, b) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stdout] [INFO] [stderr] warning: 1 warning emitted [INFO] [stdout] running 0 tests [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c6b68710b79a0093d41f758f25934ee7a01c53a33e8ac85d698a2f367bb489d1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c6b68710b79a0093d41f758f25934ee7a01c53a33e8ac85d698a2f367bb489d1", kill_on_drop: false }` [INFO] [stdout] c6b68710b79a0093d41f758f25934ee7a01c53a33e8ac85d698a2f367bb489d1