[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] 5e6ceffcf9b1ebd3807c9174ba576c5c54cd63a2 [INFO] testing flamingoodev/rust-learn against 1.59.0 for beta-1.60-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflamingoodev%2Frust-learn" "/workspace/builds/worker-23/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-23/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/flamingoodev/rust-learn on toolchain 1.59.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "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-23/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" "+1.59.0" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9ea2d5865c0797793c3e724edcd27997d527072ef51b18013849bbd8e79fe129 [INFO] running `Command { std: "docker" "start" "-a" "9ea2d5865c0797793c3e724edcd27997d527072ef51b18013849bbd8e79fe129", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9ea2d5865c0797793c3e724edcd27997d527072ef51b18013849bbd8e79fe129", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9ea2d5865c0797793c3e724edcd27997d527072ef51b18013849bbd8e79fe129", kill_on_drop: false }` [INFO] [stdout] 9ea2d5865c0797793c3e724edcd27997d527072ef51b18013849bbd8e79fe129 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5b482ac3a964dfa9e459eb2fa3afa9ca98d1edf9ca890363ae3dc1ec71745bdb [INFO] running `Command { std: "docker" "start" "-a" "5b482ac3a964dfa9e459eb2fa3afa9ca98d1edf9ca890363ae3dc1ec71745bdb", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.98 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling ppv-lite86 v0.2.8 [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: unused import: `std::sync::Arc` [INFO] [stdout] --> src/syntax/t_generic.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | 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`, `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::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: 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 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: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 is never used: `vec_slice` [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 is never used: `print_slice` [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 is never used: `print_slice1` [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 is never used: `while_let` [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: 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] [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: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 is never used: `call` [INFO] [stdout] --> src/syntax/t_closure.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn call(f: F) { f() } [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: `main` [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 is never used: `square` [INFO] [stdout] --> src/syntax/t_generic.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | 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:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | 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: field is never read: `name` [INFO] [stdout] --> src/syntax/t_struct.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | name: &'a str, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `isbn` [INFO] [stdout] --> src/syntax/t_struct.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | isbn: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `version` [INFO] [stdout] --> src/syntax/t_struct.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | version: i32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `name` [INFO] [stdout] --> src/syntax/t_struct.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | name: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `isbn` [INFO] [stdout] --> src/syntax/t_struct.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | isbn: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `version` [INFO] [stdout] --> src/syntax/t_struct.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | version: i32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `locked` [INFO] [stdout] --> src/syntax/t_sync.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | locked: AtomicBool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/syntax/t_sync.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new(data: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `lock` [INFO] [stdout] --> src/syntax/t_sync.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn lock(&self, op: impl FnOnce(&mut T)) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `age` [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 is never used: `hello_world` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn hello_world() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `comment` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn comment() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `formatted_print` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn formatted_print() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `UnPrintable` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:123:8 [INFO] [stdout] | [INFO] [stdout] 123 | struct UnPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `std_print` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:139:4 [INFO] [stdout] | [INFO] [stdout] 139 | fn std_print() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `display_1` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:218:4 [INFO] [stdout] | [INFO] [stdout] 218 | fn display_1() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `red` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | red: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `green` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:329:5 [INFO] [stdout] | [INFO] [stdout] 329 | green: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `blue` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | blue: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `format` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:333:4 [INFO] [stdout] | [INFO] [stdout] 333 | fn format() { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 66 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 7.93s [INFO] running `Command { std: "docker" "inspect" "5b482ac3a964dfa9e459eb2fa3afa9ca98d1edf9ca890363ae3dc1ec71745bdb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b482ac3a964dfa9e459eb2fa3afa9ca98d1edf9ca890363ae3dc1ec71745bdb", kill_on_drop: false }` [INFO] [stdout] 5b482ac3a964dfa9e459eb2fa3afa9ca98d1edf9ca890363ae3dc1ec71745bdb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8a6b5cdf5b38072c4b2767cf8fd953d6bc4b539fc8010fbaaa496fae86c210ee [INFO] running `Command { std: "docker" "start" "-a" "8a6b5cdf5b38072c4b2767cf8fd953d6bc4b539fc8010fbaaa496fae86c210ee", kill_on_drop: false }` [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: unused import: `std::sync::Arc` [INFO] [stdout] --> src/syntax/t_generic.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | 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`, `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::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: 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 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: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 is never used: `vec_slice` [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 is never used: `print_slice` [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 is never used: `print_slice1` [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 is never used: `while_let` [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: 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] [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: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 is never used: `call` [INFO] [stdout] --> src/syntax/t_closure.rs:97:4 [INFO] [stdout] | [INFO] [stdout] 97 | fn call(f: F) { f() } [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: `main` [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 is never used: `square` [INFO] [stdout] --> src/syntax/t_generic.rs:99:4 [INFO] [stdout] | [INFO] [stdout] 99 | 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:103:4 [INFO] [stdout] | [INFO] [stdout] 103 | 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: field is never read: `name` [INFO] [stdout] --> src/syntax/t_struct.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | name: &'a str, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `isbn` [INFO] [stdout] --> src/syntax/t_struct.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | isbn: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `version` [INFO] [stdout] --> src/syntax/t_struct.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | version: i32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `name` [INFO] [stdout] --> src/syntax/t_struct.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | name: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `isbn` [INFO] [stdout] --> src/syntax/t_struct.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | isbn: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `version` [INFO] [stdout] --> src/syntax/t_struct.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | version: i32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `locked` [INFO] [stdout] --> src/syntax/t_sync.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | locked: AtomicBool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/syntax/t_sync.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new(data: T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `lock` [INFO] [stdout] --> src/syntax/t_sync.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn lock(&self, op: impl FnOnce(&mut T)) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `age` [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 is never used: `hello_world` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn hello_world() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `comment` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn comment() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `formatted_print` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:63:4 [INFO] [stdout] | [INFO] [stdout] 63 | fn formatted_print() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `UnPrintable` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:123:8 [INFO] [stdout] | [INFO] [stdout] 123 | struct UnPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `std_print` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:139:4 [INFO] [stdout] | [INFO] [stdout] 139 | fn std_print() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `display_1` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:218:4 [INFO] [stdout] | [INFO] [stdout] 218 | fn display_1() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `red` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | red: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `green` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:329:5 [INFO] [stdout] | [INFO] [stdout] 329 | green: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rust-learn v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field is never read: `blue` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | blue: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `format` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:333:4 [INFO] [stdout] | [INFO] [stdout] 333 | fn format() { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 66 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: unused import: `std::sync::Arc` [INFO] [stdout] --> src/syntax/t_generic.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | 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: `...` range patterns are deprecated [INFO] [stdout] --> src/syntax/t_bind.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | n @ 1...12 => println!("I'm a child of age {:?}", n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/syntax/t_bind.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | n @ 13...19 => println!("I'm a teen of age {:?}", n), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/syntax/t_closure.rs:109:26 [INFO] [stdout] | [INFO] [stdout] 109 | let incr_x = move || x += 1; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [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: 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: function is never used: `main` [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 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: field is never read: `isbn` [INFO] [stdout] --> src/syntax/t_struct.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | isbn: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `version` [INFO] [stdout] --> src/syntax/t_struct.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | version: i32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `name` [INFO] [stdout] --> src/syntax/t_struct.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | name: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `isbn` [INFO] [stdout] --> src/syntax/t_struct.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | isbn: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `version` [INFO] [stdout] --> src/syntax/t_struct.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | version: i32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `UnPrintable` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:123:8 [INFO] [stdout] | [INFO] [stdout] 123 | struct UnPrintable(i32); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `red` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | red: u8, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `green` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:329:5 [INFO] [stdout] | [INFO] [stdout] 329 | green: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `blue` [INFO] [stdout] --> src/rust_by_example/hello_world.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | blue: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 32 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.48s [INFO] running `Command { std: "docker" "inspect" "8a6b5cdf5b38072c4b2767cf8fd953d6bc4b539fc8010fbaaa496fae86c210ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8a6b5cdf5b38072c4b2767cf8fd953d6bc4b539fc8010fbaaa496fae86c210ee", kill_on_drop: false }` [INFO] [stdout] 8a6b5cdf5b38072c4b2767cf8fd953d6bc4b539fc8010fbaaa496fae86c210ee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-23/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 41951ed989ca2a9928030436f23fbe35034838245b765c31e84ac3a6de75d072 [INFO] running `Command { std: "docker" "start" "-a" "41951ed989ca2a9928030436f23fbe35034838245b765c31e84ac3a6de75d072", kill_on_drop: false }` [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: unused import: `std::sync::Arc` [INFO] [stderr] --> src/syntax/t_generic.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::Arc; [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] | ^^ ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] help: remove these braces [INFO] [stderr] | [INFO] [stderr] 11 - (a > b) => { println!("{} < {}", a, b) } [INFO] [stderr] 11 + (a > b) => println!("{} < {}", a, b) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `thread` [INFO] [stderr] --> src/syntax/t_sync.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | Arc, [INFO] [stderr] | ^^^ [INFO] [stderr] 7 | }, [INFO] [stderr] 8 | thread, [INFO] [stderr] | ^^^^^^ [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] help: consider adding a `#[cfg(test)]` to the containing module [INFO] [stderr] --> src/tests/mod.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | mod t_tests; [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:59:4 [INFO] [stderr] | [INFO] [stderr] 59 | fn if_let() -> u8 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/collections/t_vector.rs:58:8 [INFO] [stderr] | [INFO] [stderr] 58 | #[warn(dead_code)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `vec_slice` [INFO] [stderr] --> src/collections/t_vector.rs:68:4 [INFO] [stderr] | [INFO] [stderr] 68 | fn vec_slice() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `print_slice` [INFO] [stderr] --> src/collections/t_vector.rs:93:4 [INFO] [stderr] | [INFO] [stderr] 93 | fn print_slice(s: &[T]) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `print_slice1` [INFO] [stderr] --> src/collections/t_vector.rs:97:4 [INFO] [stderr] | [INFO] [stderr] 97 | fn print_slice1(s: T) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `while_let` [INFO] [stderr] --> src/collections/t_vector.rs:111:4 [INFO] [stderr] | [INFO] [stderr] 111 | fn while_let() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/collections/t_vector.rs:110:8 [INFO] [stderr] | [INFO] [stderr] 110 | #[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] 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:10:4 [INFO] [stderr] | [INFO] [stderr] 10 | 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:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | #[warn(dead_code)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `call` [INFO] [stderr] --> src/syntax/t_closure.rs:97:4 [INFO] [stderr] | [INFO] [stderr] 97 | fn call(f: F) { f() } [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: `main` [INFO] [stderr] --> src/syntax/t_generic.rs:74:4 [INFO] [stderr] | [INFO] [stderr] 74 | fn main() { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `square` [INFO] [stderr] --> src/syntax/t_generic.rs:99:4 [INFO] [stderr] | [INFO] [stderr] 99 | 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:103:4 [INFO] [stderr] | [INFO] [stderr] 103 | 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: field is never read: `name` [INFO] [stderr] --> src/syntax/t_struct.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | name: &'a str, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `isbn` [INFO] [stderr] --> src/syntax/t_struct.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | isbn: i32, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `version` [INFO] [stderr] --> src/syntax/t_struct.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | version: i32, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `name` [INFO] [stderr] --> src/syntax/t_struct.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `isbn` [INFO] [stderr] --> src/syntax/t_struct.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | isbn: i32, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `version` [INFO] [stderr] --> src/syntax/t_struct.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | version: i32, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `locked` [INFO] [stderr] --> src/syntax/t_sync.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | locked: AtomicBool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/syntax/t_sync.rs:29:12 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn new(data: T) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `lock` [INFO] [stderr] --> src/syntax/t_sync.rs:36:12 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn lock(&self, op: impl FnOnce(&mut T)) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `age` [INFO] [stderr] --> src/syntax/t_bind.rs:2:4 [INFO] [stderr] | [INFO] [stderr] 2 | fn age() -> u32 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hello_world` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:3:4 [INFO] [stderr] | [INFO] [stderr] 3 | fn hello_world() { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `comment` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:23:4 [INFO] [stderr] | [INFO] [stderr] 23 | fn comment() { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `formatted_print` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:63:4 [INFO] [stderr] | [INFO] [stderr] 63 | fn formatted_print() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `UnPrintable` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:123:8 [INFO] [stderr] | [INFO] [stderr] 123 | struct UnPrintable(i32); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `std_print` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:139:4 [INFO] [stderr] | [INFO] [stderr] 139 | fn std_print() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `display_1` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:218:4 [INFO] [stderr] | [INFO] [stderr] 218 | fn display_1() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `red` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:328:5 [INFO] [stderr] | [INFO] [stderr] 328 | red: u8, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `green` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:329:5 [INFO] [stderr] | [INFO] [stderr] 329 | green: u8, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `blue` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:330:5 [INFO] [stderr] | [INFO] [stderr] 330 | blue: u8, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `format` [INFO] [stderr] --> src/rust_by_example/hello_world.rs:333:4 [INFO] [stderr] | [INFO] [stderr] 333 | fn format() { [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: `...` range patterns are deprecated [INFO] [stderr] --> src/syntax/t_bind.rs:13:14 [INFO] [stderr] | [INFO] [stderr] 13 | n @ 1...12 => println!("I'm a child of age {:?}", n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/syntax/t_bind.rs:14:15 [INFO] [stderr] | [INFO] [stderr] 14 | n @ 13...19 => println!("I'm a teen of age {:?}", n), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/syntax/t_closure.rs:109:26 [INFO] [stderr] | [INFO] [stderr] 109 | let incr_x = move || x += 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] = help: did you mean to capture by reference instead? [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] 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 66 warnings [INFO] [stderr] warning: `rust-learn` (lib test) generated 32 warnings (23 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rust_learn-098649586ee58c0b) [INFO] [stdout] running 43 tests [INFO] [stdout] total 40 [INFO] [stdout] drwxr-xr-x 6 root root 4096 Feb 28 05:33 . [INFO] [stdout] drwxr-xr-x 6 root root 4096 Feb 28 05:33 .. [INFO] [stdout] drwxr-xr-x 8 root root 4096 Feb 28 05:33 .git [INFO] [stdout] -rw-r--r-- 1 root root 344 Feb 28 05:33 .gitignore [INFO] [stdout] drwxr-xr-x 2 root root 4096 Feb 28 05:33 .idea [INFO] [stdout] -rw-r--r-- 1 root root 2174 Feb 28 05:33 Cargo.lock [INFO] [stdout] -rw-r--r-- 1 root root 145 Feb 28 05:33 Cargo.toml [INFO] [stdout] -rw-r--r-- 1 root root 27 Feb 28 05:33 README.md [INFO] [stdout] drwxr-xr-x 12 root root 4096 Feb 28 05:33 src [INFO] [stdout] drwxr-xr-x 3 root root 4096 Feb 28 05:33 tests [INFO] [stdout] test collections::t_vector::test_if_let ... ok [INFO] [stdout] test collections::t_vector::test_slice ... ok [INFO] [stdout] test collections::t_vector::test_while_let ... ok [INFO] [stdout] test rust_by_example::hello_world::t_comment ... ok [INFO] [stdout] test rust_by_example::hello_world::t_display1 ... ok [INFO] [stdout] test rust_by_example::hello_world::t_format ... ok [INFO] [stdout] test examples::t_struct::t_sharpe_test ... ok [INFO] [stdout] test rust_by_example::hello_world::t_display ... ok [INFO] [stdout] test rust_by_example::hello_world::t_hello_world ... ok [INFO] [stdout] test rust_by_example::hello_world::t_formatted_print ... ok [INFO] [stdout] test rust_by_example::hello_world::t_list_display ... ok [INFO] [stdout] test rust_by_example::hello_world::t_std_print ... ok [INFO] [stdout] test smartpointer::t_smart_pointer::t_test_master_pointer ... ok [INFO] [stdout] test syntax::t_bind::t_bind_test ... ok [INFO] [stdout] test syntax::t_closure::t_fn_move ... ok [INFO] [stdout] test syntax::t_closure::t_math ... ok [INFO] [stdout] test syntax::t_closure::t_two ... 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_function::t_op ... ok [INFO] [stdout] test syntax::t_generic::test_square ... ok [INFO] [stdout] test syntax::t_macro::t_macro ... ok [INFO] [stdout] test syntax::t_option::t_option_test ... 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_result::t_result_type ... 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_type::test_t_type ... ok [INFO] [stdout] test syntax::t_command::t_command_test ... ok [INFO] [stdout] test syntax::t_thread::t_thread2_test ... ok [INFO] [stdout] test syntax::t_struct::t_struct_move_test ... ok [INFO] [stdout] test syntax::t_closure::t_fn ... ok [INFO] [stdout] test panic::t_panic::t_panic ... ok [INFO] [stdout] test syntax::t_error::test_panic_hook ... ok [INFO] [stdout] test syntax::t_sync::t_sync_test ... ok [INFO] [stdout] test tests::t_tests::it_works ... ok [INFO] [stdout] test tests::t_tests::another - should panic ... ok [INFO] [stdout] test syntax::t_struct::t_struct_test ... ok [INFO] [stdout] test tests::t_tests::test_result ... ok [INFO] [stdout] test tests::t_tests::test_iter ... ok [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rust_learn-c7b9fcf1adf5ebe5) [INFO] [stdout] test tests::t_tests::test_size ... ok [INFO] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-3fa9a42b0d10c95d) [INFO] [stdout] test tests::t_tests::test_it_works ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [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] | ^^ ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] help: remove these braces [INFO] [stderr] | [INFO] [stderr] 11 - (a > b) => { println!("{} < {}", a, b) } [INFO] [stderr] 11 + (a > b) => println!("{} < {}", a, b) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stdout] [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] running `Command { std: "docker" "inspect" "41951ed989ca2a9928030436f23fbe35034838245b765c31e84ac3a6de75d072", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "41951ed989ca2a9928030436f23fbe35034838245b765c31e84ac3a6de75d072", kill_on_drop: false }` [INFO] [stdout] 41951ed989ca2a9928030436f23fbe35034838245b765c31e84ac3a6de75d072