[INFO] cloning repository https://github.com/swisd/rust-datastruct [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/swisd/rust-datastruct" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fswisd%2Frust-datastruct", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fswisd%2Frust-datastruct'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a2221541fdade745af556f0e2d59ca9e1ba89887 [INFO] checking swisd/rust-datastruct against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fswisd%2Frust-datastruct" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/swisd/rust-datastruct [INFO] finished tweaking git repo https://github.com/swisd/rust-datastruct [INFO] tweaked toml for git repo https://github.com/swisd/rust-datastruct written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/swisd/rust-datastruct on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/swisd/rust-datastruct 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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c106fb442f305ad020affd6282be041e804ebdfe364b083ab0cbf25699fa9829 [INFO] running `Command { std: "docker" "start" "-a" "c106fb442f305ad020affd6282be041e804ebdfe364b083ab0cbf25699fa9829", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c106fb442f305ad020affd6282be041e804ebdfe364b083ab0cbf25699fa9829", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c106fb442f305ad020affd6282be041e804ebdfe364b083ab0cbf25699fa9829", kill_on_drop: false }` [INFO] [stdout] c106fb442f305ad020affd6282be041e804ebdfe364b083ab0cbf25699fa9829 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3864ebe780a0e79500c88bf36c91d359a707a7d4abdc657fb101a64a2b0227b6 [INFO] running `Command { std: "docker" "start" "-a" "3864ebe780a0e79500c88bf36c91d359a707a7d4abdc657fb101a64a2b0227b6", kill_on_drop: false }` [INFO] [stderr] Checking datastruct v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::ptr::addr_of_mut` [INFO] [stdout] --> src/datastruct.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ptr::addr_of_mut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::addr_of_mut` [INFO] [stdout] --> src/datastruct.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ptr::addr_of_mut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/datastruct.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | let mut idx: i32 = 0; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ln` [INFO] [stdout] --> src/datastruct.rs:449:13 [INFO] [stdout] | [INFO] [stdout] 449 | let mut ln: i32 = 0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_ln` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col` [INFO] [stdout] --> src/datastruct.rs:450:13 [INFO] [stdout] | [INFO] [stdout] 450 | let mut col: i32 = 0; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/datastruct.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | let mut data: Vec = Vec::new(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_len` [INFO] [stdout] --> src/datastruct.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | let mut data_len: usize = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_cap` [INFO] [stdout] --> src/datastruct.rs:453:13 [INFO] [stdout] | [INFO] [stdout] 453 | let mut data_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ptr` [INFO] [stdout] --> src/datastruct.rs:454:13 [INFO] [stdout] | [INFO] [stdout] 454 | let mut data_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_slice` [INFO] [stdout] --> src/datastruct.rs:455:13 [INFO] [stdout] | [INFO] [stdout] 455 | let mut data_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char0` [INFO] [stdout] --> src/datastruct.rs:456:13 [INFO] [stdout] | [INFO] [stdout] 456 | let mut char0: char = '*'; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_char0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/datastruct.rs:457:13 [INFO] [stdout] | [INFO] [stdout] 457 | let mut error: bool = false; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_code` [INFO] [stdout] --> src/datastruct.rs:458:13 [INFO] [stdout] | [INFO] [stdout] 458 | let mut error_code: i32 = 0; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message` [INFO] [stdout] --> src/datastruct.rs:459:13 [INFO] [stdout] | [INFO] [stdout] 459 | let mut error_message: String = String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_len` [INFO] [stdout] --> src/datastruct.rs:460:13 [INFO] [stdout] | [INFO] [stdout] 460 | let mut error_message_len: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_cap` [INFO] [stdout] --> src/datastruct.rs:461:13 [INFO] [stdout] | [INFO] [stdout] 461 | let mut error_message_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_ptr` [INFO] [stdout] --> src/datastruct.rs:462:13 [INFO] [stdout] | [INFO] [stdout] 462 | let mut error_message_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_slice` [INFO] [stdout] --> src/datastruct.rs:463:13 [INFO] [stdout] | [INFO] [stdout] 463 | let mut error_message_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath` [INFO] [stdout] --> src/datastruct.rs:464:13 [INFO] [stdout] | [INFO] [stdout] 464 | let mut filepath: String = String::new(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_len` [INFO] [stdout] --> src/datastruct.rs:465:13 [INFO] [stdout] | [INFO] [stdout] 465 | let mut filepath_len: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_cap` [INFO] [stdout] --> src/datastruct.rs:466:13 [INFO] [stdout] | [INFO] [stdout] 466 | let mut filepath_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_ptr` [INFO] [stdout] --> src/datastruct.rs:467:13 [INFO] [stdout] | [INFO] [stdout] 467 | let mut filepath_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_slice` [INFO] [stdout] --> src/datastruct.rs:468:13 [INFO] [stdout] | [INFO] [stdout] 468 | let mut filepath_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/datastruct.rs:469:13 [INFO] [stdout] | [INFO] [stdout] 469 | let mut frame: String = String::new(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_len` [INFO] [stdout] --> src/datastruct.rs:470:13 [INFO] [stdout] | [INFO] [stdout] 470 | let mut frame_len: usize = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_cap` [INFO] [stdout] --> src/datastruct.rs:471:13 [INFO] [stdout] | [INFO] [stdout] 471 | let mut frame_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_ptr` [INFO] [stdout] --> src/datastruct.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | let mut frame_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_slice` [INFO] [stdout] --> src/datastruct.rs:473:13 [INFO] [stdout] | [INFO] [stdout] 473 | let mut frame_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:448:9 [INFO] [stdout] | [INFO] [stdout] 448 | let mut idx: i32 = 0; [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: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | let mut ln: i32 = 0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:450:9 [INFO] [stdout] | [INFO] [stdout] 450 | let mut col: i32 = 0; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:451:9 [INFO] [stdout] | [INFO] [stdout] 451 | let mut data: Vec = Vec::new(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:452:9 [INFO] [stdout] | [INFO] [stdout] 452 | let mut data_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:453:9 [INFO] [stdout] | [INFO] [stdout] 453 | let mut data_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:454:9 [INFO] [stdout] | [INFO] [stdout] 454 | let mut data_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:455:9 [INFO] [stdout] | [INFO] [stdout] 455 | let mut data_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:456:9 [INFO] [stdout] | [INFO] [stdout] 456 | let mut char0: char = '*'; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:457:9 [INFO] [stdout] | [INFO] [stdout] 457 | let mut error: bool = false; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:458:9 [INFO] [stdout] | [INFO] [stdout] 458 | let mut error_code: i32 = 0; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:459:9 [INFO] [stdout] | [INFO] [stdout] 459 | let mut error_message: String = String::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:460:9 [INFO] [stdout] | [INFO] [stdout] 460 | let mut error_message_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:461:9 [INFO] [stdout] | [INFO] [stdout] 461 | let mut error_message_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:462:9 [INFO] [stdout] | [INFO] [stdout] 462 | let mut error_message_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:463:9 [INFO] [stdout] | [INFO] [stdout] 463 | let mut error_message_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:464:9 [INFO] [stdout] | [INFO] [stdout] 464 | let mut filepath: String = String::new(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:465:9 [INFO] [stdout] | [INFO] [stdout] 465 | let mut filepath_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:466:9 [INFO] [stdout] | [INFO] [stdout] 466 | let mut filepath_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:467:9 [INFO] [stdout] | [INFO] [stdout] 467 | let mut filepath_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | let mut filepath_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:469:9 [INFO] [stdout] | [INFO] [stdout] 469 | let mut frame: String = String::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:470:9 [INFO] [stdout] | [INFO] [stdout] 470 | let mut frame_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:471:9 [INFO] [stdout] | [INFO] [stdout] 471 | let mut frame_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:472:9 [INFO] [stdout] | [INFO] [stdout] 472 | let mut frame_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:473:9 [INFO] [stdout] | [INFO] [stdout] 473 | let mut frame_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mat` [INFO] [stdout] --> src/datastruct.rs:745:25 [INFO] [stdout] | [INFO] [stdout] 745 | fn transform(&self, mat: &Mat4) -> () {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:756:20 [INFO] [stdout] | [INFO] [stdout] 756 | let Vec2 { x, y } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:756:23 [INFO] [stdout] | [INFO] [stdout] 756 | let Vec2 { x, y } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:757:20 [INFO] [stdout] | [INFO] [stdout] 757 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:769:20 [INFO] [stdout] | [INFO] [stdout] 769 | let Vec3 { x, y, z } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:769:23 [INFO] [stdout] | [INFO] [stdout] 769 | let Vec3 { x, y, z } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:769:26 [INFO] [stdout] | [INFO] [stdout] 769 | let Vec3 { x, y, z } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `z: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:770:20 [INFO] [stdout] | [INFO] [stdout] 770 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:782:20 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:782:23 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:782:26 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `z: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/datastruct.rs:782:29 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `w: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:783:20 [INFO] [stdout] | [INFO] [stdout] 783 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:794:21 [INFO] [stdout] | [INFO] [stdout] 794 | fn shift(&self, x: f64, y: f64) -> Mat2 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:794:29 [INFO] [stdout] | [INFO] [stdout] 794 | fn shift(&self, x: f64, y: f64) -> Mat2 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:806:21 [INFO] [stdout] | [INFO] [stdout] 806 | fn shift(&self, x: f64, y: f64, z: f64) -> Mat3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:806:29 [INFO] [stdout] | [INFO] [stdout] 806 | fn shift(&self, x: f64, y: f64, z: f64) -> Mat3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:806:37 [INFO] [stdout] | [INFO] [stdout] 806 | fn shift(&self, x: f64, y: f64, z: f64) -> Mat3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:818:21 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:818:29 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:818:37 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `datastruct` (bin "datastruct" test) due to 2 previous errors; 85 warnings emitted [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/datastruct.rs:818:45 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused variable: `pos` [INFO] [stdout] --> src/datastruct.rs:979:22 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `pos: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tex` [INFO] [stdout] --> src/datastruct.rs:979:27 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `tex: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col` [INFO] [stdout] --> src/datastruct.rs:979:32 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `col: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `norm` [INFO] [stdout] --> src/datastruct.rs:979:37 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^^ help: try ignoring the field: `norm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:980:20 [INFO] [stdout] | [INFO] [stdout] 980 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.pos` which is behind a shared reference [INFO] [stdout] --> src/datastruct.rs:979:46 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | --- --- --- ---- ^^^^^ [INFO] [stdout] | | | | | [INFO] [stdout] | | | | ...and here [INFO] [stdout] | | | ...and here [INFO] [stdout] | | ...and here [INFO] [stdout] | data moved here [INFO] [stdout] | [INFO] [stdout] = note: move occurs because these variables have types that don't implement the `Copy` trait [INFO] [stdout] help: consider removing the dereference here [INFO] [stdout] | [INFO] [stdout] 979 - let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] 979 + let Vertex { pos, tex, col, norm } = self; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pos` [INFO] [stdout] --> src/datastruct.rs:983:22 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `pos: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tex` [INFO] [stdout] --> src/datastruct.rs:983:27 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `tex: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col` [INFO] [stdout] --> src/datastruct.rs:983:32 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `col: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `norm` [INFO] [stdout] --> src/datastruct.rs:983:37 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^^ help: try ignoring the field: `norm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mat` [INFO] [stdout] --> src/datastruct.rs:982:33 [INFO] [stdout] | [INFO] [stdout] 982 | fn transform_mut(&mut self, mat: &Mat4) -> () { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.pos` which is behind a mutable reference [INFO] [stdout] --> src/datastruct.rs:983:46 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | --- --- --- ---- ^^^^^ [INFO] [stdout] | | | | | [INFO] [stdout] | | | | ...and here [INFO] [stdout] | | | ...and here [INFO] [stdout] | | ...and here [INFO] [stdout] | data moved here [INFO] [stdout] | [INFO] [stdout] = note: move occurs because these variables have types that don't implement the `Copy` trait [INFO] [stdout] help: consider removing the dereference here [INFO] [stdout] | [INFO] [stdout] 983 - let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] 983 + let Vertex { pos, tex, col, norm } = self; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/datastruct.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | let mut idx: i32 = 0; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ln` [INFO] [stdout] --> src/datastruct.rs:449:13 [INFO] [stdout] | [INFO] [stdout] 449 | let mut ln: i32 = 0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_ln` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col` [INFO] [stdout] --> src/datastruct.rs:450:13 [INFO] [stdout] | [INFO] [stdout] 450 | let mut col: i32 = 0; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/datastruct.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | let mut data: Vec = Vec::new(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_len` [INFO] [stdout] --> src/datastruct.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | let mut data_len: usize = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_cap` [INFO] [stdout] --> src/datastruct.rs:453:13 [INFO] [stdout] | [INFO] [stdout] 453 | let mut data_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ptr` [INFO] [stdout] --> src/datastruct.rs:454:13 [INFO] [stdout] | [INFO] [stdout] 454 | let mut data_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_slice` [INFO] [stdout] --> src/datastruct.rs:455:13 [INFO] [stdout] | [INFO] [stdout] 455 | let mut data_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char0` [INFO] [stdout] --> src/datastruct.rs:456:13 [INFO] [stdout] | [INFO] [stdout] 456 | let mut char0: char = '*'; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_char0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/datastruct.rs:457:13 [INFO] [stdout] | [INFO] [stdout] 457 | let mut error: bool = false; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_code` [INFO] [stdout] --> src/datastruct.rs:458:13 [INFO] [stdout] | [INFO] [stdout] 458 | let mut error_code: i32 = 0; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message` [INFO] [stdout] --> src/datastruct.rs:459:13 [INFO] [stdout] | [INFO] [stdout] 459 | let mut error_message: String = String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_len` [INFO] [stdout] --> src/datastruct.rs:460:13 [INFO] [stdout] | [INFO] [stdout] 460 | let mut error_message_len: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_cap` [INFO] [stdout] --> src/datastruct.rs:461:13 [INFO] [stdout] | [INFO] [stdout] 461 | let mut error_message_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_ptr` [INFO] [stdout] --> src/datastruct.rs:462:13 [INFO] [stdout] | [INFO] [stdout] 462 | let mut error_message_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_message_slice` [INFO] [stdout] --> src/datastruct.rs:463:13 [INFO] [stdout] | [INFO] [stdout] 463 | let mut error_message_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_error_message_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath` [INFO] [stdout] --> src/datastruct.rs:464:13 [INFO] [stdout] | [INFO] [stdout] 464 | let mut filepath: String = String::new(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_len` [INFO] [stdout] --> src/datastruct.rs:465:13 [INFO] [stdout] | [INFO] [stdout] 465 | let mut filepath_len: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_cap` [INFO] [stdout] --> src/datastruct.rs:466:13 [INFO] [stdout] | [INFO] [stdout] 466 | let mut filepath_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_ptr` [INFO] [stdout] --> src/datastruct.rs:467:13 [INFO] [stdout] | [INFO] [stdout] 467 | let mut filepath_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `filepath_slice` [INFO] [stdout] --> src/datastruct.rs:468:13 [INFO] [stdout] | [INFO] [stdout] 468 | let mut filepath_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filepath_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/datastruct.rs:469:13 [INFO] [stdout] | [INFO] [stdout] 469 | let mut frame: String = String::new(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_len` [INFO] [stdout] --> src/datastruct.rs:470:13 [INFO] [stdout] | [INFO] [stdout] 470 | let mut frame_len: usize = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_len` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_cap` [INFO] [stdout] --> src/datastruct.rs:471:13 [INFO] [stdout] | [INFO] [stdout] 471 | let mut frame_cap: usize = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_cap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_ptr` [INFO] [stdout] --> src/datastruct.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | let mut frame_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_slice` [INFO] [stdout] --> src/datastruct.rs:473:13 [INFO] [stdout] | [INFO] [stdout] 473 | let mut frame_slice: &[u8] = &[]; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:448:9 [INFO] [stdout] | [INFO] [stdout] 448 | let mut idx: i32 = 0; [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: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | let mut ln: i32 = 0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:450:9 [INFO] [stdout] | [INFO] [stdout] 450 | let mut col: i32 = 0; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:451:9 [INFO] [stdout] | [INFO] [stdout] 451 | let mut data: Vec = Vec::new(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:452:9 [INFO] [stdout] | [INFO] [stdout] 452 | let mut data_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:453:9 [INFO] [stdout] | [INFO] [stdout] 453 | let mut data_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:454:9 [INFO] [stdout] | [INFO] [stdout] 454 | let mut data_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:455:9 [INFO] [stdout] | [INFO] [stdout] 455 | let mut data_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0507`. [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:456:9 [INFO] [stdout] | [INFO] [stdout] 456 | let mut char0: char = '*'; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:457:9 [INFO] [stdout] | [INFO] [stdout] 457 | let mut error: bool = false; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:458:9 [INFO] [stdout] | [INFO] [stdout] 458 | let mut error_code: i32 = 0; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:459:9 [INFO] [stdout] | [INFO] [stdout] 459 | let mut error_message: String = String::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:460:9 [INFO] [stdout] | [INFO] [stdout] 460 | let mut error_message_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:461:9 [INFO] [stdout] | [INFO] [stdout] 461 | let mut error_message_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:462:9 [INFO] [stdout] | [INFO] [stdout] 462 | let mut error_message_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:463:9 [INFO] [stdout] | [INFO] [stdout] 463 | let mut error_message_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:464:9 [INFO] [stdout] | [INFO] [stdout] 464 | let mut filepath: String = String::new(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:465:9 [INFO] [stdout] | [INFO] [stdout] 465 | let mut filepath_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:466:9 [INFO] [stdout] | [INFO] [stdout] 466 | let mut filepath_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:467:9 [INFO] [stdout] | [INFO] [stdout] 467 | let mut filepath_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | let mut filepath_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:469:9 [INFO] [stdout] | [INFO] [stdout] 469 | let mut frame: String = String::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:470:9 [INFO] [stdout] | [INFO] [stdout] 470 | let mut frame_len: usize = 0; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:471:9 [INFO] [stdout] | [INFO] [stdout] 471 | let mut frame_cap: usize = 0; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:472:9 [INFO] [stdout] | [INFO] [stdout] 472 | let mut frame_ptr: *mut u8 = std::ptr::null_mut(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/datastruct.rs:473:9 [INFO] [stdout] | [INFO] [stdout] 473 | let mut frame_slice: &[u8] = &[]; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mat` [INFO] [stdout] --> src/datastruct.rs:745:25 [INFO] [stdout] | [INFO] [stdout] 745 | fn transform(&self, mat: &Mat4) -> () {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:756:20 [INFO] [stdout] | [INFO] [stdout] 756 | let Vec2 { x, y } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:756:23 [INFO] [stdout] | [INFO] [stdout] 756 | let Vec2 { x, y } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:757:20 [INFO] [stdout] | [INFO] [stdout] 757 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:769:20 [INFO] [stdout] | [INFO] [stdout] 769 | let Vec3 { x, y, z } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:769:23 [INFO] [stdout] | [INFO] [stdout] 769 | let Vec3 { x, y, z } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:769:26 [INFO] [stdout] | [INFO] [stdout] 769 | let Vec3 { x, y, z } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `z: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:770:20 [INFO] [stdout] | [INFO] [stdout] 770 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:782:20 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:782:23 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:782:26 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `z: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/datastruct.rs:782:29 [INFO] [stdout] | [INFO] [stdout] 782 | let Vec4 { x, y, z, w } = *self; [INFO] [stdout] | ^ help: try ignoring the field: `w: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:783:20 [INFO] [stdout] | [INFO] [stdout] 783 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:794:21 [INFO] [stdout] | [INFO] [stdout] 794 | fn shift(&self, x: f64, y: f64) -> Mat2 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:794:29 [INFO] [stdout] | [INFO] [stdout] 794 | fn shift(&self, x: f64, y: f64) -> Mat2 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:806:21 [INFO] [stdout] | [INFO] [stdout] 806 | fn shift(&self, x: f64, y: f64, z: f64) -> Mat3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:806:29 [INFO] [stdout] | [INFO] [stdout] 806 | fn shift(&self, x: f64, y: f64, z: f64) -> Mat3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:806:37 [INFO] [stdout] | [INFO] [stdout] 806 | fn shift(&self, x: f64, y: f64, z: f64) -> Mat3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/datastruct.rs:818:21 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/datastruct.rs:818:29 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `z` [INFO] [stdout] --> src/datastruct.rs:818:37 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_z` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `w` [INFO] [stdout] --> src/datastruct.rs:818:45 [INFO] [stdout] | [INFO] [stdout] 818 | fn shift(&self, x: f64, y: f64, z: f64, w: f64) -> Mat4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pos` [INFO] [stdout] --> src/datastruct.rs:979:22 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `pos: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tex` [INFO] [stdout] --> src/datastruct.rs:979:27 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `tex: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col` [INFO] [stdout] --> src/datastruct.rs:979:32 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `col: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `norm` [INFO] [stdout] --> src/datastruct.rs:979:37 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^^ help: try ignoring the field: `norm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m` [INFO] [stdout] --> src/datastruct.rs:980:20 [INFO] [stdout] | [INFO] [stdout] 980 | let Mat4 { m } = *mat; [INFO] [stdout] | ^ help: try ignoring the field: `m: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.pos` which is behind a shared reference [INFO] [stdout] --> src/datastruct.rs:979:46 [INFO] [stdout] | [INFO] [stdout] 979 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | --- --- --- ---- ^^^^^ [INFO] [stdout] | | | | | [INFO] [stdout] | | | | ...and here [INFO] [stdout] | | | ...and here [INFO] [stdout] | | ...and here [INFO] [stdout] | data moved here [INFO] [stdout] | [INFO] [stdout] = note: move occurs because these variables have types that don't implement the `Copy` trait [INFO] [stdout] help: consider removing the dereference here [INFO] [stdout] | [INFO] [stdout] 979 - let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] 979 + let Vertex { pos, tex, col, norm } = self; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pos` [INFO] [stdout] --> src/datastruct.rs:983:22 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `pos: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tex` [INFO] [stdout] --> src/datastruct.rs:983:27 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `tex: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col` [INFO] [stdout] --> src/datastruct.rs:983:32 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^ help: try ignoring the field: `col: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `norm` [INFO] [stdout] --> src/datastruct.rs:983:37 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | ^^^^ help: try ignoring the field: `norm: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mat` [INFO] [stdout] --> src/datastruct.rs:982:33 [INFO] [stdout] | [INFO] [stdout] 982 | fn transform_mut(&mut self, mat: &Mat4) -> () { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.pos` which is behind a mutable reference [INFO] [stdout] --> src/datastruct.rs:983:46 [INFO] [stdout] | [INFO] [stdout] 983 | let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] | --- --- --- ---- ^^^^^ [INFO] [stdout] | | | | | [INFO] [stdout] | | | | ...and here [INFO] [stdout] | | | ...and here [INFO] [stdout] | | ...and here [INFO] [stdout] | data moved here [INFO] [stdout] | [INFO] [stdout] = note: move occurs because these variables have types that don't implement the `Copy` trait [INFO] [stdout] help: consider removing the dereference here [INFO] [stdout] | [INFO] [stdout] 983 - let Vertex { pos, tex, col, norm } = *self; [INFO] [stdout] 983 + let Vertex { pos, tex, col, norm } = self; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0507`. [INFO] [stdout] [INFO] [stderr] error: could not compile `datastruct` (bin "datastruct") due to 2 previous errors; 85 warnings emitted [INFO] running `Command { std: "docker" "inspect" "3864ebe780a0e79500c88bf36c91d359a707a7d4abdc657fb101a64a2b0227b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3864ebe780a0e79500c88bf36c91d359a707a7d4abdc657fb101a64a2b0227b6", kill_on_drop: false }` [INFO] [stdout] 3864ebe780a0e79500c88bf36c91d359a707a7d4abdc657fb101a64a2b0227b6