[INFO] cloning repository https://github.com/vighneshiyer/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/vighneshiyer/learning-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvighneshiyer%2Flearning-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvighneshiyer%2Flearning-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 72a026bd6f561b672739f8d80e157183251baed6 [INFO] checking vighneshiyer/learning-rust against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvighneshiyer%2Flearning-rust" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/vighneshiyer/learning-rust on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/vighneshiyer/learning-rust [INFO] finished tweaking git repo https://github.com/vighneshiyer/learning-rust [INFO] tweaked toml for git repo https://github.com/vighneshiyer/learning-rust written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/vighneshiyer/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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "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/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6036e2e5d1acd943320d82d8ebb2c75012a3a75bd58e685c2f1b5b2a5b74f73a [INFO] running `Command { std: "docker" "start" "-a" "6036e2e5d1acd943320d82d8ebb2c75012a3a75bd58e685c2f1b5b2a5b74f73a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6036e2e5d1acd943320d82d8ebb2c75012a3a75bd58e685c2f1b5b2a5b74f73a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6036e2e5d1acd943320d82d8ebb2c75012a3a75bd58e685c2f1b5b2a5b74f73a", kill_on_drop: false }` [INFO] [stdout] 6036e2e5d1acd943320d82d8ebb2c75012a3a75bd58e685c2f1b5b2a5b74f73a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 940e55bc6c1ebc4df4748652b9f290043d44cc0425dae82b1d6c7c88a698eeba [INFO] running `Command { std: "docker" "start" "-a" "940e55bc6c1ebc4df4748652b9f290043d44cc0425dae82b1d6c7c88a698eeba", kill_on_drop: false }` [INFO] [stderr] Checking comprehensive_rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day2.rs:102:17 [INFO] [stdout] | [INFO] [stdout] 102 | _ => panic!(), // oh very cool, it already knows this is unreachable [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day2.rs:102:17 [INFO] [stdout] | [INFO] [stdout] 88 | (Result::Ok(left_val), Result::Ok(right_val)) => match op { [INFO] [stdout] | --------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 100 | (e @ Err(_), _) => return e, [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 101 | (_, e @ Err(_)) => return e, [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 102 | _ => panic!(), // oh very cool, it already knows this is unreachable [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0` and `1` are never read [INFO] [stdout] --> src/day1.rs:240:18 [INFO] [stdout] | [INFO] [stdout] 240 | pub struct Point(i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PoundsOfForce` is never constructed [INFO] [stdout] --> src/day1.rs:243:8 [INFO] [stdout] | [INFO] [stdout] 243 | struct PoundsOfForce(f64); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day1.rs:246:6 [INFO] [stdout] | [INFO] [stdout] 246 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PlayerMove` is never used [INFO] [stdout] --> src/day1.rs:252:6 [INFO] [stdout] | [INFO] [stdout] 252 | enum PlayerMove { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Bar` is never used [INFO] [stdout] --> src/day1.rs:259:6 [INFO] [stdout] | [INFO] [stdout] 259 | enum Bar { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Event` is never used [INFO] [stdout] --> src/day1.rs:274:6 [INFO] [stdout] | [INFO] [stdout] 274 | enum Event { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ElevatorDirection` is never used [INFO] [stdout] --> src/day1.rs:284:6 [INFO] [stdout] | [INFO] [stdout] 284 | enum ElevatorDirection { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `car_arrived` is never used [INFO] [stdout] --> src/day1.rs:290:4 [INFO] [stdout] | [INFO] [stdout] 290 | fn car_arrived(floor: i32) -> Event { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `car_door_opened` is never used [INFO] [stdout] --> src/day1.rs:295:4 [INFO] [stdout] | [INFO] [stdout] 295 | fn car_door_opened() -> Event { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `car_door_closed` is never used [INFO] [stdout] --> src/day1.rs:300:4 [INFO] [stdout] | [INFO] [stdout] 300 | fn car_door_closed() -> Event { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lobby_call_button_pressed` is never used [INFO] [stdout] --> src/day1.rs:305:4 [INFO] [stdout] | [INFO] [stdout] 305 | fn lobby_call_button_pressed(floor: i32, dir: ElevatorDirection) -> Event { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `car_floor_button_pressed` is never used [INFO] [stdout] --> src/day1.rs:310:4 [INFO] [stdout] | [INFO] [stdout] 310 | fn car_floor_button_pressed(floor: i32) -> Event { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Foo` is never constructed [INFO] [stdout] --> src/day2.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct Foo { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RResult` is never used [INFO] [stdout] --> src/day2.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | enum RResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `divide_in_two` is never used [INFO] [stdout] --> src/day2.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn divide_in_two(n: i32) -> RResult { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sleep_for` is never used [INFO] [stdout] --> src/day2.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn sleep_for(secs: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Operation` is never used [INFO] [stdout] --> src/day2.rs:60:6 [INFO] [stdout] | [INFO] [stdout] 60 | enum Operation { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Expression` is never used [INFO] [stdout] --> src/day2.rs:69:6 [INFO] [stdout] | [INFO] [stdout] 69 | enum Expression { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval` is never used [INFO] [stdout] --> src/day2.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn eval(e: Expression) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Race` is never constructed [INFO] [stdout] --> src/day2.rs:163:8 [INFO] [stdout] | [INFO] [stdout] 163 | struct Race { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `add_lap`, `print_laps`, and `finish` are never used [INFO] [stdout] --> src/day2.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 168 | impl Race { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 169 | fn new(name: &str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | fn add_lap(&mut self, lap: i32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | fn print_laps(&self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | fn finish(self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Animal` is never used [INFO] [stdout] --> src/day2.rs:204:7 [INFO] [stdout] | [INFO] [stdout] 204 | trait Animal { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Pet` is never used [INFO] [stdout] --> src/day2.rs:208:7 [INFO] [stdout] | [INFO] [stdout] 208 | trait Pet: Animal { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dog` is never constructed [INFO] [stdout] --> src/day2.rs:216:8 [INFO] [stdout] | [INFO] [stdout] 216 | struct Dog { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Meters` is never constructed [INFO] [stdout] --> src/day2.rs:243:8 [INFO] [stdout] | [INFO] [stdout] 243 | struct Meters(i32); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/day2.rs:245:22 [INFO] [stdout] | [INFO] [stdout] 245 | struct MetersSquared(i32); [INFO] [stdout] | ------------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `MetersSquared` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Multiply` is never used [INFO] [stdout] --> src/day2.rs:247:7 [INFO] [stdout] | [INFO] [stdout] 247 | trait Multiply { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Player` is never constructed [INFO] [stdout] --> src/day2.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | struct Player { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Player` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StderrLogger` is never constructed [INFO] [stdout] --> src/day2.rs:285:8 [INFO] [stdout] | [INFO] [stdout] 285 | struct StderrLogger; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `do_things` is never used [INFO] [stdout] --> src/day2.rs:293:4 [INFO] [stdout] | [INFO] [stdout] 293 | fn do_things(logger: &impl Logger) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VerbosityFilter` is never constructed [INFO] [stdout] --> src/day2.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 298 | struct VerbosityFilter { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `duplicate` is never used [INFO] [stdout] --> src/day2.rs:321:4 [INFO] [stdout] | [INFO] [stdout] 321 | fn duplicate(a: T) -> (T, T) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dup2` is never used [INFO] [stdout] --> src/day2.rs:325:4 [INFO] [stdout] | [INFO] [stdout] 325 | fn dup2(a: T) -> (T, T) [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_const` is never used [INFO] [stdout] --> src/day2.rs:333:4 [INFO] [stdout] | [INFO] [stdout] 333 | fn add_const(x: impl Into) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pair_of` is never used [INFO] [stdout] --> src/day2.rs:337:4 [INFO] [stdout] | [INFO] [stdout] 337 | fn pair_of(x: u32) -> impl std::fmt::Debug { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic` is never used [INFO] [stdout] --> src/day2.rs:343:4 [INFO] [stdout] | [INFO] [stdout] 343 | fn generic(pet: &impl Pet) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dynamic` is never used [INFO] [stdout] --> src/day2.rs:348:4 [INFO] [stdout] | [INFO] [stdout] 348 | fn dynamic(pet: &dyn Pet) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Counter` is never constructed [INFO] [stdout] --> src/day2.rs:389:8 [INFO] [stdout] | [INFO] [stdout] 389 | struct Counter { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `count`, and `times_seen` are never used [INFO] [stdout] --> src/day2.rs:395:8 [INFO] [stdout] | [INFO] [stdout] 393 | impl Counter { [INFO] [stdout] | ----------------------------- associated items in this implementation [INFO] [stdout] 394 | /// Create a new Counter. [INFO] [stdout] 395 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 402 | fn count(&mut self, value: T) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 413 | fn times_seen(&self, value: T) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_lines` is never used [INFO] [stdout] --> src/day2.rs:482:4 [INFO] [stdout] | [INFO] [stdout] 482 | fn count_lines(reader: R) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `log` is never used [INFO] [stdout] --> src/day2.rs:497:4 [INFO] [stdout] | [INFO] [stdout] 497 | fn log(writer: &mut W, msg: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Derived` is never constructed [INFO] [stdout] --> src/day2.rs:512:8 [INFO] [stdout] | [INFO] [stdout] 512 | struct Derived { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Derived` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/day2.rs:519:20 [INFO] [stdout] | [INFO] [stdout] 519 | struct Implemented(String); [INFO] [stdout] | ----------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `Implemented` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_with_log` is never used [INFO] [stdout] --> src/day2.rs:544:4 [INFO] [stdout] | [INFO] [stdout] 544 | fn apply_with_log(func: impl FnOnce(i32) -> i32, input: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RotDecoder` is never constructed [INFO] [stdout] --> src/day2.rs:567:8 [INFO] [stdout] | [INFO] [stdout] 567 | struct RotDecoder { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day2.rs:498:5 [INFO] [stdout] | [INFO] [stdout] 498 | writer.write_all(msg.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 498 | let _ = writer.write_all(msg.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day2.rs:499:5 [INFO] [stdout] | [INFO] [stdout] 499 | writer.write_all("\n".as_bytes()); // returns Result<()> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 499 | let _ = writer.write_all("\n".as_bytes()); // returns Result<()> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 48 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/day2.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | let x = match foo { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/day2.rs:33:22 [INFO] [stdout] | [INFO] [stdout] 33 | Foo { x: (1, b), y } => None, [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/day2.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | Foo { x: (1, b), y } => None, [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/day2.rs:102:17 [INFO] [stdout] | [INFO] [stdout] 102 | _ => panic!(), // oh very cool, it already knows this is unreachable [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/day2.rs:102:17 [INFO] [stdout] | [INFO] [stdout] 88 | (Result::Ok(left_val), Result::Ok(right_val)) => match op { [INFO] [stdout] | --------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 100 | (e @ Err(_), _) => return e, [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 101 | (_, e @ Err(_)) => return e, [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] 102 | _ => panic!(), // oh very cool, it already knows this is unreachable [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day2.rs:370:9 [INFO] [stdout] | [INFO] [stdout] 370 | let mut position = name.find('n'); [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: fields `0` and `1` are never read [INFO] [stdout] --> src/day1.rs:240:18 [INFO] [stdout] | [INFO] [stdout] 240 | pub struct Point(i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PoundsOfForce` is never constructed [INFO] [stdout] --> src/day1.rs:243:8 [INFO] [stdout] | [INFO] [stdout] 243 | struct PoundsOfForce(f64); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day1.rs:246:6 [INFO] [stdout] | [INFO] [stdout] 246 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PlayerMove` is never used [INFO] [stdout] --> src/day1.rs:252:6 [INFO] [stdout] | [INFO] [stdout] 252 | enum PlayerMove { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `dir` and `floor` are never read [INFO] [stdout] --> src/day1.rs:275:20 [INFO] [stdout] | [INFO] [stdout] 275 | EnterRequest { dir: ElevatorDirection, floor: i32 }, [INFO] [stdout] | ------------ ^^^ ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Event` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `floor` is never read [INFO] [stdout] --> src/day1.rs:276:19 [INFO] [stdout] | [INFO] [stdout] 276 | ExitRequest { floor: i32 }, [INFO] [stdout] | ----------- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Event` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `floor` is never read [INFO] [stdout] --> src/day1.rs:277:18 [INFO] [stdout] | [INFO] [stdout] 277 | CarArrival { floor: i32 }, [INFO] [stdout] | ---------- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Event` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Down` is never constructed [INFO] [stdout] --> src/day1.rs:286:5 [INFO] [stdout] | [INFO] [stdout] 284 | enum ElevatorDirection { [INFO] [stdout] | ----------------- variant in this enum [INFO] [stdout] 285 | Up, [INFO] [stdout] 286 | Down, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ElevatorDirection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `leg_count` is never used [INFO] [stdout] --> src/day2.rs:205:8 [INFO] [stdout] | [INFO] [stdout] 204 | trait Animal { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] 205 | fn leg_count(&self) -> u32; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `age` is never read [INFO] [stdout] --> src/day2.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 216 | struct Dog { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 217 | name: String, [INFO] [stdout] 218 | age: i8, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/day2.rs:245:22 [INFO] [stdout] | [INFO] [stdout] 245 | struct MetersSquared(i32); [INFO] [stdout] | ------------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `MetersSquared` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `strength` and `hit_points` are never read [INFO] [stdout] --> src/day2.rs:267:5 [INFO] [stdout] | [INFO] [stdout] 265 | struct Player { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 266 | name: String, [INFO] [stdout] 267 | strength: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 268 | hit_points: u8, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Player` has derived impls for the traits `Default`, `Clone`, and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `duplicate` is never used [INFO] [stdout] --> src/day2.rs:321:4 [INFO] [stdout] | [INFO] [stdout] 321 | fn duplicate(a: T) -> (T, T) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dup2` is never used [INFO] [stdout] --> src/day2.rs:325:4 [INFO] [stdout] | [INFO] [stdout] 325 | fn dup2(a: T) -> (T, T) [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_const` is never used [INFO] [stdout] --> src/day2.rs:333:4 [INFO] [stdout] | [INFO] [stdout] 333 | fn add_const(x: impl Into) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pair_of` is never used [INFO] [stdout] --> src/day2.rs:337:4 [INFO] [stdout] | [INFO] [stdout] 337 | fn pair_of(x: u32) -> impl std::fmt::Debug { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generic` is never used [INFO] [stdout] --> src/day2.rs:343:4 [INFO] [stdout] | [INFO] [stdout] 343 | fn generic(pet: &impl Pet) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dynamic` is never used [INFO] [stdout] --> src/day2.rs:348:4 [INFO] [stdout] | [INFO] [stdout] 348 | fn dynamic(pet: &dyn Pet) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x`, `y`, and `z` are never read [INFO] [stdout] --> src/day2.rs:513:5 [INFO] [stdout] | [INFO] [stdout] 512 | struct Derived { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 513 | x: u32, [INFO] [stdout] | ^ [INFO] [stdout] 514 | y: String, [INFO] [stdout] | ^ [INFO] [stdout] 515 | z: Implemented, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `Derived` has derived impls for the traits `Default` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/day2.rs:519:20 [INFO] [stdout] | [INFO] [stdout] 519 | struct Implemented(String); [INFO] [stdout] | ----------- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `Implemented` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day2.rs:498:5 [INFO] [stdout] | [INFO] [stdout] 498 | writer.write_all(msg.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 498 | let _ = writer.write_all(msg.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/day2.rs:499:5 [INFO] [stdout] | [INFO] [stdout] 499 | writer.write_all("\n".as_bytes()); // returns Result<()> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 499 | let _ = writer.write_all("\n".as_bytes()); // returns Result<()> [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.15s [INFO] running `Command { std: "docker" "inspect" "940e55bc6c1ebc4df4748652b9f290043d44cc0425dae82b1d6c7c88a698eeba", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "940e55bc6c1ebc4df4748652b9f290043d44cc0425dae82b1d6c7c88a698eeba", kill_on_drop: false }` [INFO] [stdout] 940e55bc6c1ebc4df4748652b9f290043d44cc0425dae82b1d6c7c88a698eeba