[INFO] cloning repository https://github.com/eoncarlyle/learning-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/eoncarlyle/learning-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feoncarlyle%2Flearning-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feoncarlyle%2Flearning-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d7cf1e7c9bbfa65eb1e700195d570dde5a92d1f4 [INFO] building eoncarlyle/learning-rust against master#44f415c1d617ebc7b931a243b7b321ef8a6ca47c for pr-142134-abi-ast-error [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feoncarlyle%2Flearning-rust" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/eoncarlyle/learning-rust on toolchain 44f415c1d617ebc7b931a243b7b321ef8a6ca47c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/eoncarlyle/learning-rust [INFO] finished tweaking git repo https://github.com/eoncarlyle/learning-rust [INFO] tweaked toml for git repo https://github.com/eoncarlyle/learning-rust written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/eoncarlyle/learning-rust 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" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e61521468e76df6c8ec768060e6bed90b60d46f49a9a597a8acbaf69ae02df3d [INFO] running `Command { std: "docker" "start" "-a" "e61521468e76df6c8ec768060e6bed90b60d46f49a9a597a8acbaf69ae02df3d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e61521468e76df6c8ec768060e6bed90b60d46f49a9a597a8acbaf69ae02df3d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e61521468e76df6c8ec768060e6bed90b60d46f49a9a597a8acbaf69ae02df3d", kill_on_drop: false }` [INFO] [stdout] e61521468e76df6c8ec768060e6bed90b60d46f49a9a597a8acbaf69ae02df3d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e24254cbe1156c4699d8d3da0dbc619bf1777e2aae79dcb0c5ef0ccbb34c85a8 [INFO] running `Command { std: "docker" "start" "-a" "e24254cbe1156c4699d8d3da0dbc619bf1777e2aae79dcb0c5ef0ccbb34c85a8", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling getrandom v0.3.2 [INFO] [stderr] Compiling zerocopy v0.8.23 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling smallvec v1.14.0 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.0 [INFO] [stderr] Compiling learning-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/main.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/main.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use std::thread::{self}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env::VarsOs` [INFO] [stdout] --> src/chapter4.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::env::VarsOs; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/chapter4.rs:58:21 [INFO] [stdout] | [INFO] [stdout] 58 | let mut buffer = buffer.lock().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_1` is never used [INFO] [stdout] --> src/chapter3.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn problem_3_1() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_3` is never used [INFO] [stdout] --> src/chapter3.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn problem_3_3() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_4` is never used [INFO] [stdout] --> src/chapter3.rs:79:4 [INFO] [stdout] | [INFO] [stdout] 79 | fn problem_3_4() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_6_thread` is never used [INFO] [stdout] --> src/chapter3.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn problem_3_6_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_6` is never used [INFO] [stdout] --> src/chapter3.rs:156:4 [INFO] [stdout] | [INFO] [stdout] 156 | fn problem_3_6() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_7_thread` is never used [INFO] [stdout] --> src/chapter3.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | fn problem_3_7_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_7` is never used [INFO] [stdout] --> src/chapter3.rs:209:4 [INFO] [stdout] | [INFO] [stdout] 209 | fn problem_3_7() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dancer` is never constructed [INFO] [stdout] --> src/chapter3.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | struct Dancer { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8_exclusive_thread` is never used [INFO] [stdout] --> src/chapter3.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn problem_3_8_exclusive_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8_exclusive` is never used [INFO] [stdout] --> src/chapter3.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn problem_3_8_exclusive() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_1_producer` is never used [INFO] [stdout] --> src/chapter4.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn problem_4_1_producer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_1_consumer` is never used [INFO] [stdout] --> src/chapter4.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn problem_4_1_consumer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_1` is never used [INFO] [stdout] --> src/chapter4.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn problem_4_1() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ReaderWriterIoState` is never used [INFO] [stdout] --> src/chapter4.rs:168:6 [INFO] [stdout] | [INFO] [stdout] 168 | enum ReaderWriterIoState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReaderWriterIoState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReaderWriterState` is never constructed [INFO] [stdout] --> src/chapter4.rs:173:8 [INFO] [stdout] | [INFO] [stdout] 173 | struct ReaderWriterState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_2_reader` is never used [INFO] [stdout] --> src/chapter4.rs:180:4 [INFO] [stdout] | [INFO] [stdout] 180 | fn problem_4_2_reader( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_2_writer` is never used [INFO] [stdout] --> src/chapter4.rs:241:4 [INFO] [stdout] | [INFO] [stdout] 241 | fn problem_4_2_writer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_2` is never used [INFO] [stdout] --> src/chapter4.rs:303:8 [INFO] [stdout] | [INFO] [stdout] 303 | pub fn problem_4_2() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8_thread` is never used [INFO] [stdout] --> src/safety_example.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn problem_3_8_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8` is never used [INFO] [stdout] --> src/safety_example.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn problem_3_8() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `MutexGuard` that must be used [INFO] [stdout] --> src/chapter4.rs:295:13 [INFO] [stdout] | [INFO] [stdout] 295 | state.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if unused the Mutex will immediately unlock [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 295 | let _ = state.lock().unwrap(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.93s [INFO] running `Command { std: "docker" "inspect" "e24254cbe1156c4699d8d3da0dbc619bf1777e2aae79dcb0c5ef0ccbb34c85a8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e24254cbe1156c4699d8d3da0dbc619bf1777e2aae79dcb0c5ef0ccbb34c85a8", kill_on_drop: false }` [INFO] [stdout] e24254cbe1156c4699d8d3da0dbc619bf1777e2aae79dcb0c5ef0ccbb34c85a8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 04a7708572e1b8a6dc5fc4eb50c3221b4caa04b9b7d418977e3a1d66ac1dad19 [INFO] running `Command { std: "docker" "start" "-a" "04a7708572e1b8a6dc5fc4eb50c3221b4caa04b9b7d418977e3a1d66ac1dad19", kill_on_drop: false }` [INFO] [stderr] Compiling learning-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/main.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/main.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use std::thread::{self}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env::VarsOs` [INFO] [stdout] --> src/chapter4.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::env::VarsOs; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/chapter4.rs:58:21 [INFO] [stdout] | [INFO] [stdout] 58 | let mut buffer = buffer.lock().unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_1` is never used [INFO] [stdout] --> src/chapter3.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn problem_3_1() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_3` is never used [INFO] [stdout] --> src/chapter3.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn problem_3_3() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_4` is never used [INFO] [stdout] --> src/chapter3.rs:79:4 [INFO] [stdout] | [INFO] [stdout] 79 | fn problem_3_4() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_6_thread` is never used [INFO] [stdout] --> src/chapter3.rs:134:4 [INFO] [stdout] | [INFO] [stdout] 134 | fn problem_3_6_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_6` is never used [INFO] [stdout] --> src/chapter3.rs:156:4 [INFO] [stdout] | [INFO] [stdout] 156 | fn problem_3_6() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_7_thread` is never used [INFO] [stdout] --> src/chapter3.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | fn problem_3_7_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_7` is never used [INFO] [stdout] --> src/chapter3.rs:209:4 [INFO] [stdout] | [INFO] [stdout] 209 | fn problem_3_7() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dancer` is never constructed [INFO] [stdout] --> src/chapter3.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | struct Dancer { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8_exclusive_thread` is never used [INFO] [stdout] --> src/chapter3.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn problem_3_8_exclusive_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8_exclusive` is never used [INFO] [stdout] --> src/chapter3.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn problem_3_8_exclusive() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_1_producer` is never used [INFO] [stdout] --> src/chapter4.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn problem_4_1_producer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_1_consumer` is never used [INFO] [stdout] --> src/chapter4.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn problem_4_1_consumer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_1` is never used [INFO] [stdout] --> src/chapter4.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn problem_4_1() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ReaderWriterIoState` is never used [INFO] [stdout] --> src/chapter4.rs:168:6 [INFO] [stdout] | [INFO] [stdout] 168 | enum ReaderWriterIoState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ReaderWriterIoState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReaderWriterState` is never constructed [INFO] [stdout] --> src/chapter4.rs:173:8 [INFO] [stdout] | [INFO] [stdout] 173 | struct ReaderWriterState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_2_reader` is never used [INFO] [stdout] --> src/chapter4.rs:180:4 [INFO] [stdout] | [INFO] [stdout] 180 | fn problem_4_2_reader( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_2_writer` is never used [INFO] [stdout] --> src/chapter4.rs:241:4 [INFO] [stdout] | [INFO] [stdout] 241 | fn problem_4_2_writer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_4_2` is never used [INFO] [stdout] --> src/chapter4.rs:303:8 [INFO] [stdout] | [INFO] [stdout] 303 | pub fn problem_4_2() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8_thread` is never used [INFO] [stdout] --> src/safety_example.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn problem_3_8_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `problem_3_8` is never used [INFO] [stdout] --> src/safety_example.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn problem_3_8() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `MutexGuard` that must be used [INFO] [stdout] --> src/chapter4.rs:295:13 [INFO] [stdout] | [INFO] [stdout] 295 | state.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if unused the Mutex will immediately unlock [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 295 | let _ = state.lock().unwrap(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.52s [INFO] running `Command { std: "docker" "inspect" "04a7708572e1b8a6dc5fc4eb50c3221b4caa04b9b7d418977e3a1d66ac1dad19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "04a7708572e1b8a6dc5fc4eb50c3221b4caa04b9b7d418977e3a1d66ac1dad19", kill_on_drop: false }` [INFO] [stdout] 04a7708572e1b8a6dc5fc4eb50c3221b4caa04b9b7d418977e3a1d66ac1dad19