[INFO] cloning repository https://github.com/maomingan/rust_practice
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/maomingan/rust_practice" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaomingan%2Frust_practice", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaomingan%2Frust_practice'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4c0a620d417173cc2309e735547f77b0f8bd963c
[INFO] testing maomingan/rust_practice against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaomingan%2Frust_practice" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/maomingan/rust_practice
[INFO] finished tweaking git repo https://github.com/maomingan/rust_practice
[INFO] tweaked toml for git repo https://github.com/maomingan/rust_practice written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/maomingan/rust_practice on toolchain 1.98.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/maomingan/rust_practice already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3
[INFO] running `Command { std: "docker" "start" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling rust_practice v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `variables::variables`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use variables::variables;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datatype::datatype`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use datatype::datatype;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_i`
[INFO] [stdout]  --> src/datatype.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let number_i = 23; // 有符号整形，可以表示负数
[INFO] [stdout]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_i`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_u`
[INFO] [stdout]  --> src/datatype.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let number_u: u32 = 23; // 无符号整形，只能表示正数
[INFO] [stdout]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_f`
[INFO] [stdout]  --> src/datatype.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let number_f = 0.2; // 双精度浮点
[INFO] [stdout]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_f32`
[INFO] [stdout]  --> src/datatype.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let number_f32: f32 = 0.2;  // 单精度浮点
[INFO] [stdout]   |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]  --> src/datatype.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let b = false;  // 布尔
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/datatype.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let c = 'Z';    // char，四字节，单引号
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/datatype.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let s = "Z";    // 字符串
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s2`
[INFO] [stdout]  --> src/refstring.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let s2 = s;
[INFO] [stdout]   |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss2`
[INFO] [stdout]   --> src/refstring.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let ss2 = ss.clone();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_ss2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s` is never read
[INFO] [stdout]  --> src/refstring.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 |     let mut s = "a";
[INFO] [stdout]   |                 ^^^ this value is reassigned later and never used
[INFO] [stdout] 4 |     s = "b";
[INFO] [stdout]   |     ------- `s` is overwritten here before the previous value is read
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let word = first_word(&my_string[0..6]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let word = first_word(&my_string[..]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let word = first_word(&my_string);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let word = first_word(&my_string_literal[0..6]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let word = first_word(&my_string_literal[..]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variables` is never used
[INFO] [stdout]  --> src/variables.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn variables() {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `datatype` is never used
[INFO] [stdout]  --> src/datatype.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn datatype() {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_if` is never used
[INFO] [stdout]  --> src/control.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn control_if(number: i32){
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_if_let` is never used
[INFO] [stdout]   --> src/control.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn control_if_let(b: bool) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_loop` is never used
[INFO] [stdout]   --> src/control.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn control_loop () {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_while` is never used
[INFO] [stdout]   --> src/control.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn control_while () {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_for` is never used
[INFO] [stdout]   --> src/control.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn control_for () {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `in_params` is never used
[INFO] [stdout]  --> src/func.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn in_params(x: i32, y: i32) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_result` is never used
[INFO] [stdout]  --> src/func.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn return_result(x: i32, y: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ref_test` is never used
[INFO] [stdout]  --> src/refstring.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn ref_test () {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_string` is never used
[INFO] [stdout]   --> src/refstring.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn test_string(str: String){
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_slice` is never used
[INFO] [stdout]   --> src/slice.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn test_slice () {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_word` is never used
[INFO] [stdout]   --> src/slice.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn first_word(s: &str) -> &str {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]  --> src/struct_demo.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Rectangle {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]  --> src/struct_demo.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn test () {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_area` is never used
[INFO] [stdout]   --> src/struct_demo.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn cal_area (rectangle: &Rectangle) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test2` is never used
[INFO] [stdout]   --> src/struct_demo.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn test2 () {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `cal_area` is never used
[INFO] [stdout]   --> src/struct_demo.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 32 |     fn cal_area (&self) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test3` is never used
[INFO] [stdout]   --> src/struct_demo.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn test3 () {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_hold` is never used
[INFO] [stdout]   --> src/struct_demo.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 56 |     fn can_hold (&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.49s
[INFO] running `Command { std: "docker" "inspect" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling rust_practice v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `variables::variables`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use variables::variables;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datatype::datatype`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use datatype::datatype;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_i`
[INFO] [stdout]  --> src/datatype.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let number_i = 23; // 有符号整形，可以表示负数
[INFO] [stdout]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_i`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_u`
[INFO] [stdout]  --> src/datatype.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let number_u: u32 = 23; // 无符号整形，只能表示正数
[INFO] [stdout]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_f`
[INFO] [stdout]  --> src/datatype.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let number_f = 0.2; // 双精度浮点
[INFO] [stdout]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `number_f32`
[INFO] [stdout]  --> src/datatype.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let number_f32: f32 = 0.2;  // 单精度浮点
[INFO] [stdout]   |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]  --> src/datatype.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let b = false;  // 布尔
[INFO] [stdout]   |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/datatype.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let c = 'Z';    // char，四字节，单引号
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]   --> src/datatype.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let s = "Z";    // 字符串
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s2`
[INFO] [stdout]  --> src/refstring.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     let s2 = s;
[INFO] [stdout]   |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss2`
[INFO] [stdout]   --> src/refstring.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let ss2 = ss.clone();
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_ss2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s` is never read
[INFO] [stdout]  --> src/refstring.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 |     let mut s = "a";
[INFO] [stdout]   |                 ^^^ this value is reassigned later and never used
[INFO] [stdout] 4 |     s = "b";
[INFO] [stdout]   |     ------- `s` is overwritten here before the previous value is read
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let word = first_word(&my_string[0..6]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let word = first_word(&my_string[..]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let word = first_word(&my_string);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let word = first_word(&my_string_literal[0..6]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word`
[INFO] [stdout]   --> src/slice.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let word = first_word(&my_string_literal[..]);
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `variables` is never used
[INFO] [stdout]  --> src/variables.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn variables() {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `datatype` is never used
[INFO] [stdout]  --> src/datatype.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn datatype() {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_if` is never used
[INFO] [stdout]  --> src/control.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn control_if(number: i32){
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_if_let` is never used
[INFO] [stdout]   --> src/control.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn control_if_let(b: bool) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_loop` is never used
[INFO] [stdout]   --> src/control.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn control_loop () {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_while` is never used
[INFO] [stdout]   --> src/control.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn control_while () {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `control_for` is never used
[INFO] [stdout]   --> src/control.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn control_for () {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `in_params` is never used
[INFO] [stdout]  --> src/func.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn in_params(x: i32, y: i32) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_result` is never used
[INFO] [stdout]  --> src/func.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn return_result(x: i32, y: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ref_test` is never used
[INFO] [stdout]  --> src/refstring.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn ref_test () {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_string` is never used
[INFO] [stdout]   --> src/refstring.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn test_string(str: String){
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_slice` is never used
[INFO] [stdout]   --> src/slice.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn test_slice () {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_word` is never used
[INFO] [stdout]   --> src/slice.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn first_word(s: &str) -> &str {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rectangle` is never constructed
[INFO] [stdout]  --> src/struct_demo.rs:2:8
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Rectangle {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]  --> src/struct_demo.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn test () {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_area` is never used
[INFO] [stdout]   --> src/struct_demo.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn cal_area (rectangle: &Rectangle) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test2` is never used
[INFO] [stdout]   --> src/struct_demo.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn test2 () {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `cal_area` is never used
[INFO] [stdout]   --> src/struct_demo.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 32 |     fn cal_area (&self) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test3` is never used
[INFO] [stdout]   --> src/struct_demo.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn test3 () {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_hold` is never used
[INFO] [stdout]   --> src/struct_demo.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl Rectangle {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 56 |     fn can_hold (&self, other: &Rectangle) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.34s
[INFO] running `Command { std: "docker" "inspect" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `variables::variables`
[INFO] [stderr]  --> src/main.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use variables::variables;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `datatype::datatype`
[INFO] [stderr]   --> src/main.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use datatype::datatype;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `number_i`
[INFO] [stderr]  --> src/datatype.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let number_i = 23; // 有符号整形，可以表示负数
[INFO] [stderr]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_i`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `number_u`
[INFO] [stderr]  --> src/datatype.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let number_u: u32 = 23; // 无符号整形，只能表示正数
[INFO] [stderr]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_u`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `number_f`
[INFO] [stderr]  --> src/datatype.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let number_f = 0.2; // 双精度浮点
[INFO] [stderr]   |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_f`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `number_f32`
[INFO] [stderr]  --> src/datatype.rs:8:9
[INFO] [stderr]   |
[INFO] [stderr] 8 |     let number_f32: f32 = 0.2;  // 单精度浮点
[INFO] [stderr]   |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_f32`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `b`
[INFO] [stderr]  --> src/datatype.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |     let b = false;  // 布尔
[INFO] [stderr]   |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `c`
[INFO] [stderr]   --> src/datatype.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let c = 'Z';    // char，四字节，单引号
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s`
[INFO] [stderr]   --> src/datatype.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let s = "Z";    // 字符串
[INFO] [stderr]    |         ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `s2`
[INFO] [stderr]  --> src/refstring.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let s2 = s;
[INFO] [stderr]   |         ^^ help: if this is intentional, prefix it with an underscore: `_s2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ss2`
[INFO] [stderr]   --> src/refstring.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     let ss2 = ss.clone();
[INFO] [stderr]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_ss2`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `s` is never read
[INFO] [stderr]  --> src/refstring.rs:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 |     let mut s = "a";
[INFO] [stderr]   |                 ^^^ this value is reassigned later and never used
[INFO] [stderr] 4 |     s = "b";
[INFO] [stderr]   |     ------- `s` is overwritten here before the previous value is read
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `word`
[INFO] [stderr]   --> src/slice.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |     let word = first_word(&my_string[0..6]);
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `word`
[INFO] [stderr]   --> src/slice.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 17 |     let word = first_word(&my_string[..]);
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `word`
[INFO] [stderr]   --> src/slice.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     let word = first_word(&my_string);
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `word`
[INFO] [stderr]   --> src/slice.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |     let word = first_word(&my_string_literal[0..6]);
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `word`
[INFO] [stderr]   --> src/slice.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let word = first_word(&my_string_literal[..]);
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_word`
[INFO] [stderr] 
[INFO] [stderr] warning: function `variables` is never used
[INFO] [stderr]  --> src/variables.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn variables() {
[INFO] [stderr]   |        ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `datatype` is never used
[INFO] [stderr]  --> src/datatype.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn datatype() {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `control_if` is never used
[INFO] [stderr]  --> src/control.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn control_if(number: i32){
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `control_if_let` is never used
[INFO] [stderr]   --> src/control.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn control_if_let(b: bool) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `control_loop` is never used
[INFO] [stderr]   --> src/control.rs:16:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub fn control_loop () {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `control_while` is never used
[INFO] [stderr]   --> src/control.rs:27:8
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub fn control_while () {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `control_for` is never used
[INFO] [stderr]   --> src/control.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn control_for () {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `in_params` is never used
[INFO] [stderr]  --> src/func.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn in_params(x: i32, y: i32) {
[INFO] [stderr]   |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `return_result` is never used
[INFO] [stderr]  --> src/func.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn return_result(x: i32, y: i32) -> i32 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ref_test` is never used
[INFO] [stderr]  --> src/refstring.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn ref_test () {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_string` is never used
[INFO] [stderr]   --> src/refstring.rs:19:4
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn test_string(str: String){
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_slice` is never used
[INFO] [stderr]   --> src/slice.rs:12:8
[INFO] [stderr]    |
[INFO] [stdout] 
[INFO] [stderr] 12 | pub fn test_slice () {
[INFO] [stdout] running 0 tests
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr] warning: function `first_word` is never used
[INFO] [stdout] 
[INFO] [stderr]   --> src/slice.rs:34:4
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn first_word(s: &str) -> &str {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Rectangle` is never constructed
[INFO] [stderr]  --> src/struct_demo.rs:2:8
[INFO] [stderr]   |
[INFO] [stderr] 2 | struct Rectangle {
[INFO] [stderr]   |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test` is never used
[INFO] [stderr]  --> src/struct_demo.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn test () {
[INFO] [stderr]   |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cal_area` is never used
[INFO] [stderr]   --> src/struct_demo.rs:18:4
[INFO] [stderr]    |
[INFO] [stderr] 18 | fn cal_area (rectangle: &Rectangle) -> u32 {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test2` is never used
[INFO] [stderr]   --> src/struct_demo.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn test2 () {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `cal_area` is never used
[INFO] [stderr]   --> src/struct_demo.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 31 | impl Rectangle {
[INFO] [stderr]    | -------------- method in this implementation
[INFO] [stderr] 32 |     fn cal_area (&self) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test3` is never used
[INFO] [stderr]   --> src/struct_demo.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn test3 () {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `can_hold` is never used
[INFO] [stderr]   --> src/struct_demo.rs:56:8
[INFO] [stderr]    |
[INFO] [stderr] 55 | impl Rectangle {
[INFO] [stderr]    | -------------- method in this implementation
[INFO] [stderr] 56 |     fn can_hold (&self, other: &Rectangle) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `rust_practice` (bin "rust_practice" test) generated 37 warnings (run `cargo fix --bin "rust_practice" -p rust_practice --tests` to apply 16 suggestions)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/rust_practice-45e3535bc0594afa)
[INFO] running `Command { std: "docker" "inspect" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3", kill_on_drop: false }`
[INFO] [stdout] eb4816b7ada21d45f4417bc2c006110e26ea7897caf286e3c05c57207beb32a3
