[INFO] cloning repository https://github.com/lambdaxymox/googly-blocks
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lambdaxymox/googly-blocks" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flambdaxymox%2Fgoogly-blocks", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flambdaxymox%2Fgoogly-blocks'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d1e2a4969a5981c61d1525133bab894c0218fb80
[INFO] checking lambdaxymox/googly-blocks against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flambdaxymox%2Fgoogly-blocks" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lambdaxymox/googly-blocks
[INFO] finished tweaking git repo https://github.com/lambdaxymox/googly-blocks
[INFO] tweaked toml for git repo https://github.com/lambdaxymox/googly-blocks written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lambdaxymox/googly-blocks on toolchain b1f2594eac607c1f051534800237eeedb5590a49
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lambdaxymox/googly-blocks 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3c59236149faae02b70b517066e003a713e81a2399b6268af23eb1368ba8206c
[INFO] running `Command { std: "docker" "start" "-a" "3c59236149faae02b70b517066e003a713e81a2399b6268af23eb1368ba8206c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3c59236149faae02b70b517066e003a713e81a2399b6268af23eb1368ba8206c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3c59236149faae02b70b517066e003a713e81a2399b6268af23eb1368ba8206c", kill_on_drop: false }`
[INFO] [stdout] 3c59236149faae02b70b517066e003a713e81a2399b6268af23eb1368ba8206c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f7a2fc8c34dc786d39745653dbade912c6d1d11ecf0cdce2a5917e5e67f0021d
[INFO] running `Command { std: "docker" "start" "-a" "f7a2fc8c34dc786d39745653dbade912c6d1d11ecf0cdce2a5917e5e67f0021d", kill_on_drop: false }`
[INFO] [stderr]    Compiling libm v0.2.2
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling rayon-core v1.9.3
[INFO] [stderr]    Compiling syn v1.0.96
[INFO] [stderr]    Compiling rayon v1.5.3
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling bzip2-sys v0.1.11+1.0.8
[INFO] [stderr]    Compiling serde v1.0.137
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]     Checking weezl v0.1.6
[INFO] [stderr]     Checking miniz_oxide v0.5.3
[INFO] [stderr]    Compiling cmake v0.1.48
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]     Checking getrandom v0.2.6
[INFO] [stderr]     Checking bytemuck v1.9.1
[INFO] [stderr]     Checking raw-window-handle v0.4.3
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking gif v0.11.3
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking flate2 v1.0.24
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling glfw-sys v4.0.0+3.3.5
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling googly-blocks v0.3.94 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking bzip2 v0.4.3
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking cglinalg v0.15.6 (https://github.com/lambdaxymox/cglinalg#27cd5b24)
[INFO] [stderr]     Checking num-rational v0.3.2
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking file_logger v0.4.5 (https://github.com/lambdaxymox/file-logger#593bada6)
[INFO] [stderr]    Compiling thiserror-impl v1.0.31
[INFO] [stderr]    Compiling serde_derive v1.0.137
[INFO] [stderr]     Checking thiserror v1.0.31
[INFO] [stderr]     Checking zip v0.5.13
[INFO] [stderr]     Checking serde_json v1.0.81
[INFO] [stderr]     Checking toml v0.5.9
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking glfw v0.45.0
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking tex_atlas v0.2.1 (https://github.com/lambdaxymox/tex_atlas#e374d0e7)
[INFO] [stderr]     Checking bmfa v0.3.14 (https://github.com/lambdaxymox/bmfa#f67cb06f)
[INFO] [stdout] warning: unused variable: `landed`
[INFO] [stdout]    --> src/playing_field.rs:298:73
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn collides_with_left_wall(piece: GooglyBlock, top_left: BlockPosition, landed: &LandedBlocksGrid) -> bool {
[INFO] [stdout]     |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_landed`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:290:28
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:290:89
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                                                                                         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:340:28
[INFO] [stdout]     |
[INFO] [stdout] 340 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:340:89
[INFO] [stdout]     |
[INFO] [stdout] 340 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                                                                                         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:346:69
[INFO] [stdout]     |
[INFO] [stdout] 346 |     fn update(&self, context: &mut PlayingFieldStateMachineContext, elapsed_milliseconds: Duration) -> PlayingFieldState {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `landed`
[INFO] [stdout]    --> src/playing_field.rs:298:73
[INFO] [stdout]     |
[INFO] [stdout] 298 | fn collides_with_left_wall(piece: GooglyBlock, top_left: BlockPosition, landed: &LandedBlocksGrid) -> bool {
[INFO] [stdout]     |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_landed`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:290:28
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:290:89
[INFO] [stdout]     |
[INFO] [stdout] 290 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                                                                                         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:340:28
[INFO] [stdout]     |
[INFO] [stdout] 340 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:340:89
[INFO] [stdout]     |
[INFO] [stdout] 340 |     fn handle_input(&self, context: &mut PlayingFieldStateMachineContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]     |                                                                                         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]    --> src/playing_field_state_machine.rs:346:69
[INFO] [stdout]     |
[INFO] [stdout] 346 |     fn update(&self, context: &mut PlayingFieldStateMachineContext, elapsed_milliseconds: Duration) -> PlayingFieldState {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2774:69
[INFO] [stdout]      |
[INFO] [stdout] 2774 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2853:69
[INFO] [stdout]      |
[INFO] [stdout] 2853 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2863:49
[INFO] [stdout]      |
[INFO] [stdout] 2863 |     fn update(&self, context: &mut GameContext, elapsed_milliseconds: Duration) -> GameState {
[INFO] [stdout]      |                                                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:2885:28
[INFO] [stdout]      |
[INFO] [stdout] 2885 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2885:69
[INFO] [stdout]      |
[INFO] [stdout] 2885 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2891:49
[INFO] [stdout]      |
[INFO] [stdout] 2891 |     fn update(&self, context: &mut GameContext, elapsed_milliseconds: Duration) -> GameState {
[INFO] [stdout]      |                                                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3246:33
[INFO] [stdout]      |
[INFO] [stdout] 3246 |     fn clear_framebuffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3253:34
[INFO] [stdout]      |
[INFO] [stdout] 3253 |     fn clear_depth_buffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3414:33
[INFO] [stdout]      |
[INFO] [stdout] 3414 |     fn clear_framebuffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3421:34
[INFO] [stdout]      |
[INFO] [stdout] 3421 |     fn clear_depth_buffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3602:22
[INFO] [stdout]      |
[INFO] [stdout] 3602 |     fn render(&self, context: &mut RendererContext) {}
[INFO] [stdout]      |                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2774:69
[INFO] [stdout]      |
[INFO] [stdout] 2774 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2853:69
[INFO] [stdout]      |
[INFO] [stdout] 2853 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2863:49
[INFO] [stdout]      |
[INFO] [stdout] 2863 |     fn update(&self, context: &mut GameContext, elapsed_milliseconds: Duration) -> GameState {
[INFO] [stdout]      |                                                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo` and `v_tex_vbo` are never read
[INFO] [stdout]    --> src/main.rs:352:5
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct GLBackgroundPanel {
[INFO] [stdout]     |        ----------------- fields in this struct
[INFO] [stdout] 351 |     sp: GLuint,
[INFO] [stdout] 352 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 353 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GLBackgroundPanel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:2885:28
[INFO] [stdout]      |
[INFO] [stdout] 2885 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2885:69
[INFO] [stdout]      |
[INFO] [stdout] 2885 |     fn handle_input(&self, context: &mut GameContext, input: Input, elapsed_milliseconds: Duration) {
[INFO] [stdout]      |                                                                     ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]    --> src/main.rs:413:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | struct TitleScreenBufferHandle {
[INFO] [stdout]     |        ----------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 413 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 414 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 415 |     v_pos_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 416 |     v_tex_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TitleScreenBufferHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elapsed_milliseconds`
[INFO] [stdout]     --> src/main.rs:2891:49
[INFO] [stdout]      |
[INFO] [stdout] 2891 |     fn update(&self, context: &mut GameContext, elapsed_milliseconds: Duration) -> GameState {
[INFO] [stdout]      |                                                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elapsed_milliseconds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]    --> src/main.rs:578:5
[INFO] [stdout]     |
[INFO] [stdout] 575 | struct TitleScreenFlashingBufferHandle {
[INFO] [stdout]     |        ------------------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 578 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 579 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 580 |     v_pos_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 581 |     v_tex_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TitleScreenFlashingBufferHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo` and `v_tex_vbo` are never read
[INFO] [stdout]    --> src/main.rs:936:5
[INFO] [stdout]     |
[INFO] [stdout] 934 | struct UIPanel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 935 |     sp: GLuint,
[INFO] [stdout] 936 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 937 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]     --> src/main.rs:1471:5
[INFO] [stdout]      |
[INFO] [stdout] 1468 | struct PlayingFieldBackgroundBufferHandle {
[INFO] [stdout]      |        ---------------------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1471 |     v_pos_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1472 |     v_tex_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1473 |     v_pos_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1474 |     v_tex_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `PlayingFieldBackgroundBufferHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]     --> src/main.rs:1711:5
[INFO] [stdout]      |
[INFO] [stdout] 1708 | struct GameOverPanelHandle {
[INFO] [stdout]      |        ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1711 |     v_pos_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1712 |     v_tex_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1713 |     v_pos_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1714 |     v_tex_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `GameOverPanelHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]     --> src/main.rs:2143:5
[INFO] [stdout]      |
[INFO] [stdout] 2140 | struct PlayingFieldHandle {
[INFO] [stdout]      |        ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 2143 |     v_pos_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2146 |     v_pos_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 2147 |     v_tex_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Release` is never constructed
[INFO] [stdout]   --> src/input.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum InputAction {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     Release,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InputAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/mesh.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Points {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/mesh.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl TextureCoordinates {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `points`, `tex_coords`, and `len` are never used
[INFO] [stdout]    --> src/mesh.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | impl ObjMesh {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn points(&self) -> &[[f32; 2]] {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn tex_coords(&self) -> &[[f32; 2]] {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_enabled` and `is_unpressed` are never used
[INFO] [stdout]    --> src/title_screen_state_machine.rs:66:8
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl TitleScreenBlinkStateMachine {
[INFO] [stdout]     | --------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn is_enabled(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn is_unpressed(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3246:33
[INFO] [stdout]      |
[INFO] [stdout] 3246 |     fn clear_framebuffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3253:34
[INFO] [stdout]      |
[INFO] [stdout] 3253 |     fn clear_depth_buffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3414:33
[INFO] [stdout]      |
[INFO] [stdout] 3414 |     fn clear_framebuffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3421:34
[INFO] [stdout]      |
[INFO] [stdout] 3421 |     fn clear_depth_buffer(&self, context: &mut RendererContext) {
[INFO] [stdout]      |                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]     --> src/main.rs:3602:22
[INFO] [stdout]      |
[INFO] [stdout] 3602 |     fn render(&self, context: &mut RendererContext) {}
[INFO] [stdout]      |                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/block.rs:114:17
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn iter(&self) -> GooglyBlockShapeIterator {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn iter(&self) -> GooglyBlockShapeIterator<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/playing_field.rs:241:17
[INFO] [stdout]     |
[INFO] [stdout] 241 |     fn row_iter(&self) -> LandedBlocksRowIterator {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 241 |     fn row_iter(&self) -> LandedBlocksRowIterator<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo` and `v_tex_vbo` are never read
[INFO] [stdout]    --> src/main.rs:352:5
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct GLBackgroundPanel {
[INFO] [stdout]     |        ----------------- fields in this struct
[INFO] [stdout] 351 |     sp: GLuint,
[INFO] [stdout] 352 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 353 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GLBackgroundPanel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]    --> src/main.rs:413:5
[INFO] [stdout]     |
[INFO] [stdout] 410 | struct TitleScreenBufferHandle {
[INFO] [stdout]     |        ----------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 413 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 414 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 415 |     v_pos_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 416 |     v_tex_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TitleScreenBufferHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]    --> src/main.rs:578:5
[INFO] [stdout]     |
[INFO] [stdout] 575 | struct TitleScreenFlashingBufferHandle {
[INFO] [stdout]     |        ------------------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 578 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 579 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 580 |     v_pos_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 581 |     v_tex_loc: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TitleScreenFlashingBufferHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo` and `v_tex_vbo` are never read
[INFO] [stdout]    --> src/main.rs:936:5
[INFO] [stdout]     |
[INFO] [stdout] 934 | struct UIPanel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 935 |     sp: GLuint,
[INFO] [stdout] 936 |     v_pos_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 937 |     v_tex_vbo: GLuint,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]     --> src/main.rs:1471:5
[INFO] [stdout]      |
[INFO] [stdout] 1468 | struct PlayingFieldBackgroundBufferHandle {
[INFO] [stdout]      |        ---------------------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1471 |     v_pos_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1472 |     v_tex_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1473 |     v_pos_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1474 |     v_tex_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `PlayingFieldBackgroundBufferHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_tex_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]     --> src/main.rs:1711:5
[INFO] [stdout]      |
[INFO] [stdout] 1708 | struct GameOverPanelHandle {
[INFO] [stdout]      |        ------------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1711 |     v_pos_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1712 |     v_tex_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1713 |     v_pos_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1714 |     v_tex_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `GameOverPanelHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `v_pos_vbo`, `v_pos_loc`, and `v_tex_loc` are never read
[INFO] [stdout]     --> src/main.rs:2143:5
[INFO] [stdout]      |
[INFO] [stdout] 2140 | struct PlayingFieldHandle {
[INFO] [stdout]      |        ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 2143 |     v_pos_vbo: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2146 |     v_pos_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 2147 |     v_tex_loc: GLuint,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Release` is never constructed
[INFO] [stdout]   --> src/input.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum InputAction {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     Release,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InputAction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_disabled` is never used
[INFO] [stdout]   --> src/flashing_state_machine.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl FlashAnimationStateMachine {
[INFO] [stdout]    | ------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn is_disabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/mesh.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Points {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/mesh.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl TextureCoordinates {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `points`, `tex_coords`, and `len` are never used
[INFO] [stdout]    --> src/mesh.rs:89:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | impl ObjMesh {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn points(&self) -> &[[f32; 2]] {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn tex_coords(&self) -> &[[f32; 2]] {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_in_of_bounds`, `is_out_of_bounds`, and `is_empty_space` are never used
[INFO] [stdout]   --> src/playing_field.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl LandedBlocksQuery {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 36 |     fn is_in_of_bounds(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn is_out_of_bounds(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     fn is_empty_space(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LandedBlocksIterator` is never constructed
[INFO] [stdout]    --> src/playing_field.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | struct LandedBlocksIterator {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `iter` is never used
[INFO] [stdout]    --> src/playing_field.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 168 | impl LandedBlocksGrid {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 232 |     fn iter(&self) -> LandedBlocksIterator {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_enabled` and `is_unpressed` are never used
[INFO] [stdout]    --> src/title_screen_state_machine.rs:66:8
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl TitleScreenBlinkStateMachine {
[INFO] [stdout]     | --------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn is_enabled(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn is_unpressed(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/block.rs:114:17
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn iter(&self) -> GooglyBlockShapeIterator {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn iter(&self) -> GooglyBlockShapeIterator<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/playing_field.rs:241:17
[INFO] [stdout]     |
[INFO] [stdout] 241 |     fn row_iter(&self) -> LandedBlocksRowIterator {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 241 |     fn row_iter(&self) -> LandedBlocksRowIterator<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.87s
[INFO] running `Command { std: "docker" "inspect" "f7a2fc8c34dc786d39745653dbade912c6d1d11ecf0cdce2a5917e5e67f0021d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f7a2fc8c34dc786d39745653dbade912c6d1d11ecf0cdce2a5917e5e67f0021d", kill_on_drop: false }`
[INFO] [stdout] f7a2fc8c34dc786d39745653dbade912c6d1d11ecf0cdce2a5917e5e67f0021d
