[INFO] cloning repository https://github.com/tobyjsullivan/titan
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tobyjsullivan/titan" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftobyjsullivan%2Ftitan", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftobyjsullivan%2Ftitan'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f414a81fa705273b7872272b79af9f6993cbf38
[INFO] checking tobyjsullivan/titan against try#c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f for 2025-12-16-next-solver-global
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftobyjsullivan%2Ftitan" "/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/tobyjsullivan/titan
[INFO] finished tweaking git repo https://github.com/tobyjsullivan/titan
[INFO] tweaked toml for git repo https://github.com/tobyjsullivan/titan written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tobyjsullivan/titan on toolchain c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tobyjsullivan/titan 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" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "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] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded c_vec v1.3.3
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9762263f4bf72d930ec31ff9a2e17eda912f678de937b78a0099477214c1fe66
[INFO] running `Command { std: "docker" "start" "-a" "9762263f4bf72d930ec31ff9a2e17eda912f678de937b78a0099477214c1fe66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9762263f4bf72d930ec31ff9a2e17eda912f678de937b78a0099477214c1fe66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9762263f4bf72d930ec31ff9a2e17eda912f678de937b78a0099477214c1fe66", kill_on_drop: false }`
[INFO] [stdout] 9762263f4bf72d930ec31ff9a2e17eda912f678de937b78a0099477214c1fe66
[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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c9557a20e5ef2e0e02c29a5fafd850d1b7cf1e4f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6fcbe555bfeec7c0595a91101c9ad1d71a1813acdacad2cf4c8d4e362ae77ec6
[INFO] running `Command { std: "docker" "start" "-a" "6fcbe555bfeec7c0595a91101c9ad1d71a1813acdacad2cf4c8d4e362ae77ec6", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling cfg-if v0.1.7
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]    Compiling sdl2 v0.32.2
[INFO] [stderr]     Checking c_vec v1.3.3
[INFO] [stderr]    Compiling sdl2-sys v0.32.6
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking titan v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Direction` and `Structure`
[INFO] [stdout]  --> src/systems/menu.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::state::board::{Direction, Structure};
[INFO] [stdout]   |                           ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DIALOG_HEIGHT`, `DIALOG_WIDTH`, and `TEXT_HEIGHT`
[INFO] [stdout]  --> src/view/interface.rs:6:67
[INFO] [stdout]   |
[INFO] [stdout] 6 |     KeyboardKey, PlayerInteraction, ScreenState, COLOR_DARK_GRAY, DIALOG_HEIGHT, DIALOG_WIDTH,
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 7 |     TEXT_HEIGHT,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TextureQuery`
[INFO] [stdout]  --> src/view/screens/building.rs:8:53
[INFO] [stdout]   |
[INFO] [stdout] 8 | use sdl2::render::{Canvas, Texture, TextureCreator, TextureQuery};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LoadTexture`
[INFO] [stdout]  --> src/view/text.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sdl2::image::{LoadSurface, LoadTexture};
[INFO] [stdout]   |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_building`
[INFO] [stdout]   --> src/view/interface.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             selected_building,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `selected_building: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_category`
[INFO] [stdout]   --> src/view/interface.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             selected_category,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `selected_category: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/view/interface.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn window_panel(&self, x: i32, y: i32) -> WindowPanel {
[INFO] [stdout]    |                                    ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_height`
[INFO] [stdout]   --> src/view/screens/building.rs:60:27
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let (asset_width, asset_height) = ASSET_DIMENSIONS;
[INFO] [stdout]    |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_building`
[INFO] [stdout]   --> src/view/screens/building.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 selected_building,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `selected_building: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game`
[INFO] [stdout]    --> src/view/viewport.rs:136:35
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn spacebar_action(&self, game: &GameState) -> Option<GameAction> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `draw_begin`
[INFO] [stdout]    --> src/view/viewport.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let draw_begin = Instant::now();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_draw_begin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Direction` and `Structure`
[INFO] [stdout]  --> src/systems/menu.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::state::board::{Direction, Structure};
[INFO] [stdout]   |                           ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DIALOG_HEIGHT`, `DIALOG_WIDTH`, and `TEXT_HEIGHT`
[INFO] [stdout]  --> src/view/interface.rs:6:67
[INFO] [stdout]   |
[INFO] [stdout] 6 |     KeyboardKey, PlayerInteraction, ScreenState, COLOR_DARK_GRAY, DIALOG_HEIGHT, DIALOG_WIDTH,
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 7 |     TEXT_HEIGHT,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TextureQuery`
[INFO] [stdout]  --> src/view/screens/building.rs:8:53
[INFO] [stdout]   |
[INFO] [stdout] 8 | use sdl2::render::{Canvas, Texture, TextureCreator, TextureQuery};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `frame_count` is assigned to, but never used
[INFO] [stdout]   --> src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut frame_count: u64 = 0;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_frame_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `render_start`
[INFO] [stdout]    --> src/main.rs:130:17
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let render_start = Instant::now();
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_render_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `frame_count` is never read
[INFO] [stdout]    --> src/main.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |             frame_count += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Gold`, `Silver`, and `Diamonds` are never constructed
[INFO] [stdout]    --> src/state/board.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub enum Mineral {
[INFO] [stdout]     |          ------- variants in this enum
[INFO] [stdout] 200 |     Gold,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 201 |     Silver,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 202 |     Diamonds,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Mineral` 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: multiple variants are never constructed
[INFO] [stdout]    --> src/state/board.rs:211:5
[INFO] [stdout]     |
[INFO] [stdout] 206 | pub enum Structure {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 211 |     CityRoad,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 212 |     ApartmentBuilding, // TODO (toby): There should probably be many city building types.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     CulturalCenter,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 216 |     TennisCourt,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 217 |     SwimmingPool,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 218 |     SportsStadium,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 219 |     RaceTrack,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 220 |     University,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 221 |     AmusementPark,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     LumberMill,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 225 |     ChemicalPlant,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 226 |     SteelMill,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 227 |     Mine { mineral: Mineral },
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     Street,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 231 |     Rails,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 232 |     Bridge,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 233 |     Tunnel,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     TruckDepot,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 237 |     TrainStation,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 238 |     TrainPlatform,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 239 |     Harbor,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 240 |     Airport,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     AutomobileFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 244 |     Woodshop,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 245 |     ElectronicsFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |     SportsEquipmentFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     ToyFactory,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 248 |     JewelryFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 249 |     Warehouse,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 250 |     BuildingEquipmentFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 251 |     PaperFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 252 |     PrintingPress,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     ToyStore,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 256 |     SportingGoodsStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 257 |     FurnitureStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 258 |     Jeweler,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 259 |     ElectronicsStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 260 |     CarDealership,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 261 |     BuildingEquipmentStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 262 |     StationaryStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Structure` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/state/menu/building.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum Building {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     TrainStation,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 23 |     Airport,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     Harbor,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     AutomobileFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     Woodshop,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 29 |     ElectronicsFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     SportsEquipmentFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 31 |     ToyFactory,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 32 |     JewelryFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 33 |     Warehouse,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 34 |     BuildingEquipmentFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     PaperFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 36 |     PrintingPress,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     ToyStore,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 40 |     SportingGoodsStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     FurnitureStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 42 |     Jeweler,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 43 |     ElectronicsStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 44 |     CarDealership,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 45 |     BuildingEquipmentStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 46 |     StationaryStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     CulturalCenter,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 50 |     TennisCourt,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 51 |     SwimmingPool,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 52 |     SportsStadium,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 53 |     RaceTrack,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 54 |     University,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 55 |     AmusementPark,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Building` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `screen` is never read
[INFO] [stdout]   --> src/view/interface.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Interface {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     screen: ScreenState,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLOR_TEXT` is never used
[INFO] [stdout]   --> src/view/screens/building.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const COLOR_TEXT: (u8, u8, u8) = (255, 255, 255);
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLOR_TEXT_HIGHLIGHTED` is never used
[INFO] [stdout]   --> src/view/screens/building.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const COLOR_TEXT_HIGHLIGHTED: (u8, u8, u8) = (0, 0, 0);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUILDING_SELECTION_OFFSET` is never used
[INFO] [stdout]   --> src/view/screens/building.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const BUILDING_SELECTION_OFFSET: (u32, u32) = (1656, 680);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LoadTexture`
[INFO] [stdout]  --> src/view/text.rs:2:32
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sdl2::image::{LoadSurface, LoadTexture};
[INFO] [stdout]   |                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_building`
[INFO] [stdout]   --> src/view/interface.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             selected_building,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `selected_building: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_category`
[INFO] [stdout]   --> src/view/interface.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             selected_category,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `selected_category: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/view/interface.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn window_panel(&self, x: i32, y: i32) -> WindowPanel {
[INFO] [stdout]    |                                    ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_height`
[INFO] [stdout]   --> src/view/screens/building.rs:60:27
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let (asset_width, asset_height) = ASSET_DIMENSIONS;
[INFO] [stdout]    |                           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_building`
[INFO] [stdout]   --> src/view/screens/building.rs:72:17
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 selected_building,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ help: try ignoring the field: `selected_building: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game`
[INFO] [stdout]    --> src/view/viewport.rs:136:35
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn spacebar_action(&self, game: &GameState) -> Option<GameAction> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `draw_begin`
[INFO] [stdout]    --> src/view/viewport.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let draw_begin = Instant::now();
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_draw_begin`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `frame_count` is assigned to, but never used
[INFO] [stdout]   --> src/main.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut frame_count: u64 = 0;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_frame_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `render_start`
[INFO] [stdout]    --> src/main.rs:130:17
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let render_start = Instant::now();
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_render_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `frame_count` is never read
[INFO] [stdout]    --> src/main.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |             frame_count += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Gold`, `Silver`, and `Diamonds` are never constructed
[INFO] [stdout]    --> src/state/board.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub enum Mineral {
[INFO] [stdout]     |          ------- variants in this enum
[INFO] [stdout] 200 |     Gold,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 201 |     Silver,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 202 |     Diamonds,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Mineral` 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: multiple variants are never constructed
[INFO] [stdout]    --> src/state/board.rs:211:5
[INFO] [stdout]     |
[INFO] [stdout] 206 | pub enum Structure {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 211 |     CityRoad,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 212 |     ApartmentBuilding, // TODO (toby): There should probably be many city building types.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     CulturalCenter,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 216 |     TennisCourt,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 217 |     SwimmingPool,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 218 |     SportsStadium,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 219 |     RaceTrack,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 220 |     University,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 221 |     AmusementPark,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     LumberMill,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 225 |     ChemicalPlant,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 226 |     SteelMill,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 227 |     Mine { mineral: Mineral },
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     Street,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 231 |     Rails,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 232 |     Bridge,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 233 |     Tunnel,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     TruckDepot,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 237 |     TrainStation,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 238 |     TrainPlatform,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 239 |     Harbor,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 240 |     Airport,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     AutomobileFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 244 |     Woodshop,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 245 |     ElectronicsFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |     SportsEquipmentFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     ToyFactory,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 248 |     JewelryFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 249 |     Warehouse,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 250 |     BuildingEquipmentFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 251 |     PaperFactory,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 252 |     PrintingPress,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     ToyStore,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 256 |     SportingGoodsStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 257 |     FurnitureStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 258 |     Jeweler,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 259 |     ElectronicsStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 260 |     CarDealership,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 261 |     BuildingEquipmentStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 262 |     StationaryStore,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Structure` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/state/menu/building.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum Building {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 22 |     TrainStation,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 23 |     Airport,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     Harbor,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     AutomobileFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     Woodshop,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 29 |     ElectronicsFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     SportsEquipmentFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 31 |     ToyFactory,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 32 |     JewelryFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 33 |     Warehouse,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 34 |     BuildingEquipmentFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 35 |     PaperFactory,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 36 |     PrintingPress,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     ToyStore,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 40 |     SportingGoodsStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     FurnitureStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 42 |     Jeweler,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 43 |     ElectronicsStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 44 |     CarDealership,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 45 |     BuildingEquipmentStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 46 |     StationaryStore,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     CulturalCenter,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 50 |     TennisCourt,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 51 |     SwimmingPool,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 52 |     SportsStadium,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 53 |     RaceTrack,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 54 |     University,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 55 |     AmusementPark,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Building` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `screen` is never read
[INFO] [stdout]   --> src/view/interface.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Interface {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     screen: ScreenState,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLOR_TEXT` is never used
[INFO] [stdout]   --> src/view/screens/building.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const COLOR_TEXT: (u8, u8, u8) = (255, 255, 255);
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLOR_TEXT_HIGHLIGHTED` is never used
[INFO] [stdout]   --> src/view/screens/building.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const COLOR_TEXT_HIGHLIGHTED: (u8, u8, u8) = (0, 0, 0);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUILDING_SELECTION_OFFSET` is never used
[INFO] [stdout]   --> src/view/screens/building.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const BUILDING_SELECTION_OFFSET: (u32, u32) = (1656, 680);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.36s
[INFO] running `Command { std: "docker" "inspect" "6fcbe555bfeec7c0595a91101c9ad1d71a1813acdacad2cf4c8d4e362ae77ec6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6fcbe555bfeec7c0595a91101c9ad1d71a1813acdacad2cf4c8d4e362ae77ec6", kill_on_drop: false }`
[INFO] [stdout] 6fcbe555bfeec7c0595a91101c9ad1d71a1813acdacad2cf4c8d4e362ae77ec6
