[INFO] fetching crate oxid 0.1.0...
[INFO] testing oxid-0.1.0 against 1.91.0 for beta-1.92-2
[INFO] extracting crate oxid 0.1.0 into /workspace/builds/worker-0-tc1/source
[INFO] removed /workspace/builds/worker-0-tc1/source/.cargo/config
[INFO] started tweaking crates.io crate oxid 0.1.0
[INFO] finished tweaking crates.io crate oxid 0.1.0
[INFO] tweaked toml for crates.io crate oxid 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate oxid 0.1.0 on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate oxid 0.1.0 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" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rwasm v0.0.1
[INFO] [stderr]   Downloaded quad-rand v0.1.1
[INFO] [stderr]   Downloaded rwasm_macro v0.1.0
[INFO] [stderr]   Downloaded once_cell v1.14.0
[INFO] [stderr]   Downloaded png v0.15.3
[INFO] [stderr]   Downloaded glam v0.8.7
[INFO] [stderr]   Downloaded hashbrown v0.8.2
[INFO] [stderr]   Downloaded glam v0.10.2
[INFO] [stderr]   Downloaded ttf-parser v0.8.3
[INFO] [stderr]   Downloaded deflate v0.7.20
[INFO] [stderr]   Downloaded object v0.29.0
[INFO] [stderr]   Downloaded fontdue v0.4.0
[INFO] [stderr]   Downloaded backtrace v0.3.66
[INFO] [stderr]   Downloaded image v0.22.5
[INFO] [stderr]   Downloaded libc v0.2.132
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9698b489a80bf19d84e3adf67a2d0fd8585b2d57adfce784670636a5c6c5cc8e
[INFO] running `Command { std: "docker" "start" "-a" "9698b489a80bf19d84e3adf67a2d0fd8585b2d57adfce784670636a5c6c5cc8e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9698b489a80bf19d84e3adf67a2d0fd8585b2d57adfce784670636a5c6c5cc8e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9698b489a80bf19d84e3adf67a2d0fd8585b2d57adfce784670636a5c6c5cc8e", kill_on_drop: false }`
[INFO] [stdout] 9698b489a80bf19d84e3adf67a2d0fd8585b2d57adfce784670636a5c6c5cc8e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c5cb04ea4db49329ff6297b9a38d1bdd0ec6fbf3aed8c4cfb1caf5c4fa2a9c85
[INFO] running `Command { std: "docker" "start" "-a" "c5cb04ea4db49329ff6297b9a38d1bdd0ec6fbf3aed8c4cfb1caf5c4fa2a9c85", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling adler32 v1.2.0
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling libc v0.2.132
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling hashbrown v0.8.2
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling gimli v0.26.2
[INFO] [stderr]    Compiling ahash v0.3.8
[INFO] [stderr]    Compiling glam v0.10.2
[INFO] [stderr]    Compiling miniz_oxide v0.5.4
[INFO] [stderr]    Compiling rustc-demangle v0.1.21
[INFO] [stderr]    Compiling ttf-parser v0.8.3
[INFO] [stderr]    Compiling once_cell v1.14.0
[INFO] [stderr]    Compiling deflate v0.7.20
[INFO] [stderr]    Compiling inflate v0.4.5
[INFO] [stderr]    Compiling rwasm_macro v0.1.0
[INFO] [stderr]    Compiling quad-rand v0.1.1
[INFO] [stderr]    Compiling object v0.29.0
[INFO] [stderr]    Compiling png v0.15.3
[INFO] [stderr]    Compiling backtrace v0.3.66
[INFO] [stderr]    Compiling fontdue v0.4.0
[INFO] [stderr]    Compiling addr2line v0.17.0
[INFO] [stderr]    Compiling image v0.22.5
[INFO] [stderr]    Compiling rwasm v0.0.1
[INFO] [stderr]    Compiling oxid v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Color`, `DrawMode`, `FilterMode`, `Image`, `Texture2D`, and `colors::*`
[INFO] [stdout]  --> src/framework/drawing.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use crate::framework::quad_gl::{colors::*, Color, DrawMode, FilterMode, Image, Texture2D};
[INFO] [stdout]   |                                     ^^^^^^^^^  ^^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]    --> src/wasm/mod.rs:311:1
[INFO] [stdout]     |
[INFO] [stdout] 311 | #[no_mangle]
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/core/graphics/mod.rs:1456:17
[INFO] [stdout]      |
[INFO] [stdout] 1456 |             let mut cache = buffer_cache
[INFO] [stdout]      |                 ----^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/core/graphics/mod.rs:1487:17
[INFO] [stdout]      |
[INFO] [stdout] 1487 |             let mut buffer_data = &mut buffer_cache
[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/core/graphics/mod.rs:1548:13
[INFO] [stdout]      |
[INFO] [stdout] 1548 |         let mut pipeline = &mut ctx.pipelines[self.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/framework/telemetry.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut query = self.queries.get_mut(&name).unwrap();
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `offset` and `size` are never read
[INFO] [stdout]    --> src/core/graphics/mod.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub struct ShaderUniform {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 314 |     gl_loc: UniformLocation,
[INFO] [stdout] 315 |     offset: usize,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 316 |     size: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ShaderUniform` has a derived impl for the trait `Debug`, 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: struct `Uniforms` is never constructed
[INFO] [stdout]    --> src/framework/quad_gl.rs:282:16
[INFO] [stdout]     |
[INFO] [stdout] 282 |     pub struct Uniforms {}
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/mod.rs:246:86
[INFO] [stdout]     |
[INFO] [stdout] 246 |     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| panic!(e));
[INFO] [stdout]     |                                                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 246 |     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| panic!("{}", e));
[INFO] [stdout]     |                                                                                      +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 246 -     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| panic!(e));
[INFO] [stdout] 246 +     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| std::panic::panic_any(e));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]  --> src/core/graphics/mod.rs:8:62
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let cname = CString::new(name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout]   |                                                              ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let cname = CString::new(name).unwrap_or_else(|e| panic!("{}", e));
[INFO] [stdout]   |                                                              +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]   |
[INFO] [stdout] 8 -     let cname = CString::new(name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout] 8 +     let cname = CString::new(name).unwrap_or_else(|e| std::panic::panic_any(e));
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/core/graphics/mod.rs:1492:71
[INFO] [stdout]      |
[INFO] [stdout] 1492 |             let cname = CString::new(*name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout]      |                                                                       ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]      |
[INFO] [stdout] 1492 |             let cname = CString::new(*name).unwrap_or_else(|e| panic!("{}", e));
[INFO] [stdout]      |                                                                       +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]      |
[INFO] [stdout] 1492 -             let cname = CString::new(*name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout] 1492 +             let cname = CString::new(*name).unwrap_or_else(|e| std::panic::panic_any(e));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/core/graphics/mod.rs:1525:25
[INFO] [stdout]      |
[INFO] [stdout] 1525 | /                         format!(
[INFO] [stdout] 1526 | |                             "attribute: {} outside of allocated attributes array len: {}",
[INFO] [stdout] 1527 | |                             name,
[INFO] [stdout] 1528 | |                             vertex_layout.len()
[INFO] [stdout] 1529 | |                         )
[INFO] [stdout]      | |_________________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]      = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]      |
[INFO] [stdout] 1525 ~                         
[INFO] [stdout] 1526 |                             "attribute: {} outside of allocated attributes array len: {}",
[INFO] [stdout] 1527 |                             name,
[INFO] [stdout] 1528 |                             vertex_layout.len()
[INFO] [stdout] 1529 ~                         
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/wasm/mod.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | /         OXID_CONTEXT
[INFO] [stdout] 23 | |             .as_mut()
[INFO] [stdout]    | |_____________________^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/wasm/mod.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     OXID_CONTEXT.as_mut().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/framework/mod.rs:170:14
[INFO] [stdout]     |
[INFO] [stdout] 170 |     unsafe { CONTEXT.as_mut().unwrap_or_else(|| panic!()) }
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/framework/mod.rs:239:44
[INFO] [stdout]     |
[INFO] [stdout] 239 |             if let Some(future) = unsafe { MAIN_FUTURE.as_mut() } {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 |         if STORAGE.is_none() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | /         STORAGE
[INFO] [stdout] 37 | |             .as_mut()
[INFO] [stdout]    | |_____________________^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if STORAGE.is_none() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         STORAGE.as_mut().unwrap().get(&TypeId::of::<T>()).as_ref()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if STORAGE.is_none() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |         STORAGE.as_mut().unwrap().get(&TypeId::of::<T>()).as_ref()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/telemetry.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | /         PROFILER.get_or_insert_with(|| Profiler {
[INFO] [stdout]  9 | |             frame: Frame::new(),
[INFO] [stdout] 10 | |             queries: HashMap::new(),
[INFO] [stdout] 11 | |             active_query: None,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | |             enable_request: None,
[INFO] [stdout] 15 | |         })
[INFO] [stdout]    | |__________^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.13s
[INFO] running `Command { std: "docker" "inspect" "c5cb04ea4db49329ff6297b9a38d1bdd0ec6fbf3aed8c4cfb1caf5c4fa2a9c85", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5cb04ea4db49329ff6297b9a38d1bdd0ec6fbf3aed8c4cfb1caf5c4fa2a9c85", kill_on_drop: false }`
[INFO] [stdout] c5cb04ea4db49329ff6297b9a38d1bdd0ec6fbf3aed8c4cfb1caf5c4fa2a9c85
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fb0f8f3932a23236e44161d370abab9f05cd26a15db8a678d10a54f8385b0e2e
[INFO] running `Command { std: "docker" "start" "-a" "fb0f8f3932a23236e44161d370abab9f05cd26a15db8a678d10a54f8385b0e2e", kill_on_drop: false }`
[INFO] [stderr]    Compiling glam v0.8.7
[INFO] [stdout] warning: unused imports: `Color`, `DrawMode`, `FilterMode`, `Image`, `Texture2D`, and `colors::*`
[INFO] [stdout]  --> src/framework/drawing.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use crate::framework::quad_gl::{colors::*, Color, DrawMode, FilterMode, Image, Texture2D};
[INFO] [stdout]   |                                     ^^^^^^^^^  ^^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]    --> src/wasm/mod.rs:311:1
[INFO] [stdout]     |
[INFO] [stdout] 311 | #[no_mangle]
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/core/graphics/mod.rs:1456:17
[INFO] [stdout]      |
[INFO] [stdout] 1456 |             let mut cache = buffer_cache
[INFO] [stdout]      |                 ----^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/core/graphics/mod.rs:1487:17
[INFO] [stdout]      |
[INFO] [stdout] 1487 |             let mut buffer_data = &mut buffer_cache
[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/core/graphics/mod.rs:1548:13
[INFO] [stdout]      |
[INFO] [stdout] 1548 |         let mut pipeline = &mut ctx.pipelines[self.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/framework/telemetry.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut query = self.queries.get_mut(&name).unwrap();
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `offset` and `size` are never read
[INFO] [stdout]    --> src/core/graphics/mod.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub struct ShaderUniform {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 314 |     gl_loc: UniformLocation,
[INFO] [stdout] 315 |     offset: usize,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 316 |     size: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ShaderUniform` has a derived impl for the trait `Debug`, 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: struct `Uniforms` is never constructed
[INFO] [stdout]    --> src/framework/quad_gl.rs:282:16
[INFO] [stdout]     |
[INFO] [stdout] 282 |     pub struct Uniforms {}
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/core/mod.rs:246:86
[INFO] [stdout]     |
[INFO] [stdout] 246 |     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| panic!(e));
[INFO] [stdout]     |                                                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 246 |     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| panic!("{}", e));
[INFO] [stdout]     |                                                                                      +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 246 -     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| panic!(e));
[INFO] [stdout] 246 +     let title = CString::new(conf.window_title.as_bytes()).unwrap_or_else(|e| std::panic::panic_any(e));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]  --> src/core/graphics/mod.rs:8:62
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let cname = CString::new(name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout]   |                                                              ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]   |
[INFO] [stdout] 8 |     let cname = CString::new(name).unwrap_or_else(|e| panic!("{}", e));
[INFO] [stdout]   |                                                              +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]   |
[INFO] [stdout] 8 -     let cname = CString::new(name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout] 8 +     let cname = CString::new(name).unwrap_or_else(|e| std::panic::panic_any(e));
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/core/graphics/mod.rs:1492:71
[INFO] [stdout]      |
[INFO] [stdout] 1492 |             let cname = CString::new(*name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout]      |                                                                       ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]      |
[INFO] [stdout] 1492 |             let cname = CString::new(*name).unwrap_or_else(|e| panic!("{}", e));
[INFO] [stdout]      |                                                                       +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]      |
[INFO] [stdout] 1492 -             let cname = CString::new(*name).unwrap_or_else(|e| panic!(e));
[INFO] [stdout] 1492 +             let cname = CString::new(*name).unwrap_or_else(|e| std::panic::panic_any(e));
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/core/graphics/mod.rs:1525:25
[INFO] [stdout]      |
[INFO] [stdout] 1525 | /                         format!(
[INFO] [stdout] 1526 | |                             "attribute: {} outside of allocated attributes array len: {}",
[INFO] [stdout] 1527 | |                             name,
[INFO] [stdout] 1528 | |                             vertex_layout.len()
[INFO] [stdout] 1529 | |                         )
[INFO] [stdout]      | |_________________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]      = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]      |
[INFO] [stdout] 1525 ~                         
[INFO] [stdout] 1526 |                             "attribute: {} outside of allocated attributes array len: {}",
[INFO] [stdout] 1527 |                             name,
[INFO] [stdout] 1528 |                             vertex_layout.len()
[INFO] [stdout] 1529 ~                         
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/wasm/mod.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | /         OXID_CONTEXT
[INFO] [stdout] 23 | |             .as_mut()
[INFO] [stdout]    | |_____________________^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/wasm/mod.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     OXID_CONTEXT.as_mut().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/framework/mod.rs:170:14
[INFO] [stdout]     |
[INFO] [stdout] 170 |     unsafe { CONTEXT.as_mut().unwrap_or_else(|| panic!()) }
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/framework/mod.rs:239:44
[INFO] [stdout]     |
[INFO] [stdout] 239 |             if let Some(future) = unsafe { MAIN_FUTURE.as_mut() } {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 |         if STORAGE.is_none() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | /         STORAGE
[INFO] [stdout] 37 | |             .as_mut()
[INFO] [stdout]    | |_____________________^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if STORAGE.is_none() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         STORAGE.as_mut().unwrap().get(&TypeId::of::<T>()).as_ref()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if STORAGE.is_none() {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/collections/storage.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |         STORAGE.as_mut().unwrap().get(&TypeId::of::<T>()).as_ref()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/framework/telemetry.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | /         PROFILER.get_or_insert_with(|| Profiler {
[INFO] [stdout]  9 | |             frame: Frame::new(),
[INFO] [stdout] 10 | |             queries: HashMap::new(),
[INFO] [stdout] 11 | |             active_query: None,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | |             enable_request: None,
[INFO] [stdout] 15 | |         })
[INFO] [stdout]    | |__________^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling oxid v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0464]: multiple candidates for `rlib` dependency `glam` found
[INFO] [stdout]  --> src/framework/drawing.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use glam::Mat4;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: candidate #1: /opt/rustwide/target/debug/deps/libglam-7023d321f99031ac.rlib
[INFO] [stdout]   = note: candidate #2: /opt/rustwide/target/debug/deps/libglam-a58e7918c4bc942f.rlib
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::framework::math::Rect`, `crate::framework::math::Rect`, `crate::framework::math::Rect`
[INFO] [stdout]  --> src/framework/camera.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     math::Rect,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/framework/text.rs:4:51
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::framework::{color::Color, get_context, math::Rect};
[INFO] [stdout]   |                                                   ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/framework/texture.rs:4:54
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::framework::{file::load_file, get_context, math::Rect};
[INFO] [stdout]   |                                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:20:28
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn point(&self) -> Vec2 {
[INFO] [stdout]    |                            ^^^^ help: a struct with a similar name exists: `Vec`
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/f8297e351a40c1439a467bbbb6879088047f50b3/library/alloc/src/vec/mod.rs:434:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Vec` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:45:44
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn move_to(&mut self, destination: Vec2) {
[INFO] [stdout]    |                                            ^^^^ help: a struct with a similar name exists: `Vec`
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/f8297e351a40c1439a467bbbb6879088047f50b3/library/alloc/src/vec/mod.rs:434:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Vec` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn contains(&self, point: Vec2) -> bool {
[INFO] [stdout]    |                                   ^^^^ help: a struct with a similar name exists: `Vec`
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/f8297e351a40c1439a467bbbb6879088047f50b3/library/alloc/src/vec/mod.rs:434:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Vec` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:75:52
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn polar_to_cartesian(rho: f32, theta: f32) -> Vec2 {
[INFO] [stdout]    |                                                    ^^^^ help: a struct with a similar name exists: `Vec`
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/f8297e351a40c1439a467bbbb6879088047f50b3/library/alloc/src/vec/mod.rs:434:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Vec` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:80:38
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn cartesian_to_polar(cartesian: Vec2) -> Vec2 {
[INFO] [stdout]    |                                      ^^^^ help: a struct with a similar name exists: `Vec`
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/f8297e351a40c1439a467bbbb6879088047f50b3/library/alloc/src/vec/mod.rs:434:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Vec` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:80:47
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn cartesian_to_polar(cartesian: Vec2) -> Vec2 {
[INFO] [stdout]    |                                               ^^^^ help: a struct with a similar name exists: `Vec`
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/f8297e351a40c1439a467bbbb6879088047f50b3/library/alloc/src/vec/mod.rs:434:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Vec` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color`, `DrawMode`, `FilterMode`, `Image`, `Texture2D`, and `colors::*`
[INFO] [stdout]  --> src/framework/drawing.rs:3:37
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use crate::framework::quad_gl::{colors::*, Color, DrawMode, FilterMode, Image, Texture2D};
[INFO] [stdout]   |                                     ^^^^^^^^^  ^^^^^  ^^^^^^^^  ^^^^^^^^^^  ^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/tmp/rustcXRqaXR/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/{liboxid-e9fe141f80088d5e,libfontdue-e15e39c02b4b4977,libttf_parser-c0c54287abaf75a3,libhashbrown-2a343ee76db0f81c,libahash-81fa2c151c245c94,libimage-2e377154c4deeb21,libpng-7298137960f53119,libdeflate-6629e0fa775a22ec,libinflate-2d031bb8de5b0fce,libadler32-9c6d43af6a3312a2,libcrc32fast-392fef61f9a7b203,libbitflags-a56917bef97924b7,libnum_rational-3d433064920a9697,libnum_iter-5a2b5c9526e73897,libnum_integer-1d010a5b3f80cb31,libnum_traits-786b0f488f762fde,libbyteorder-ef923ace94ebfdce,libquad_rand-1bf34e09930a807e,libglam-7023d321f99031ac,librwasm-5f9f4aee78a98d3c,libbacktrace-b84a63f36b193065,libminiz_oxide-f2c8070ab93e8734,libadler-b4175ab842d2ed22,libobject-abbf57defce3fc1f,libmemchr-5cfaf8c787ca494e,liblibc-ee096c9b68a45ca0,libaddr2line-75200caab6990847,libgimli-57099c80655efd90,libcfg_if-6a7eff3bb9b3cc11,librustc_demangle-cb5c9d0a512abf73,libonce_cell-60245e80439ad5ff}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lc" "-lm" "-lrt" "-lpthread" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/tmp/rustcXRqaXR/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/examples/basic_shapes-e74a7a4927a4b64d" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: rust-lld: error: undefined symbol: glPixelStorei
[INFO] [stdout]           >>> referenced by texture.rs:278 (src/core/graphics/texture.rs:278)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::update_texture_part::h318d94a1a9dc87b6) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by texture.rs:153 (src/core/graphics/texture.rs:153)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::new::h1846d5cc30b4b2f0) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glTexSubImage2D
[INFO] [stdout]           >>> referenced by texture.rs:279 (src/core/graphics/texture.rs:279)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::update_texture_part::h318d94a1a9dc87b6) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGenTextures
[INFO] [stdout]           >>> referenced by texture.rs:151 (src/core/graphics/texture.rs:151)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::new::h1846d5cc30b4b2f0) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glTexImage2D
[INFO] [stdout]           >>> referenced by texture.rs:154 (src/core/graphics/texture.rs:154)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::new::h1846d5cc30b4b2f0) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glTexParameteri
[INFO] [stdout]           >>> referenced by texture.rs:169 (src/core/graphics/texture.rs:169)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::new::h1846d5cc30b4b2f0) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by texture.rs:170 (src/core/graphics/texture.rs:170)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::new::h1846d5cc30b4b2f0) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by texture.rs:171 (src/core/graphics/texture.rs:171)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.03.rcgu.o:(oxid::core::graphics::texture::Texture::new::h1846d5cc30b4b2f0) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced 1 more times
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glBindTexture
[INFO] [stdout]           >>> referenced by quad_gl.rs:977 (src/framework/quad_gl.rs:977)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.02.rcgu.o:(oxid::framework::quad_gl::Texture2D::grab_screen::h4343acb94bf5799c) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by mod.rs:484 (src/core/graphics/mod.rs:484)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::GlCache::bind_texture::ha9464733d4f840c9) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glCopyTexImage2D
[INFO] [stdout]           >>> referenced by quad_gl.rs:978 (src/framework/quad_gl.rs:978)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.02.rcgu.o:(oxid::framework::quad_gl::Texture2D::grab_screen::h4343acb94bf5799c) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGenFramebuffers
[INFO] [stdout]           >>> referenced by mod.rs:565 (src/core/graphics/mod.rs:565)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::RenderPass::new::h43ead45cbdb0e542) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glBindFramebuffer
[INFO] [stdout]           >>> referenced by mod.rs:566 (src/core/graphics/mod.rs:566)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::RenderPass::new::h43ead45cbdb0e542) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by mod.rs:583 (src/core/graphics/mod.rs:583)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::RenderPass::new::h43ead45cbdb0e542) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by mod.rs:1040 (src/core/graphics/mod.rs:1040)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::Context::begin_pass::h5f106cc73cfc1018) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced 2 more times
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glFramebufferTexture2D
[INFO] [stdout]           >>> referenced by mod.rs:567 (src/core/graphics/mod.rs:567)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::RenderPass::new::h43ead45cbdb0e542) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by mod.rs:575 (src/core/graphics/mod.rs:575)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::RenderPass::new::h43ead45cbdb0e542) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glCreateShader
[INFO] [stdout]           >>> referenced by mod.rs:1158 (src/core/graphics/mod.rs:1158)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::load_shader::h4105640d4c5608d2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glShaderSource
[INFO] [stdout]           >>> referenced by mod.rs:1163 (src/core/graphics/mod.rs:1163)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::load_shader::h4105640d4c5608d2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glCompileShader
[INFO] [stdout]           >>> referenced by mod.rs:1164 (src/core/graphics/mod.rs:1164)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::load_shader::h4105640d4c5608d2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGetShaderiv
[INFO] [stdout]           >>> referenced by mod.rs:1167 (src/core/graphics/mod.rs:1167)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::load_shader::h4105640d4c5608d2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           >>> referenced by mod.rs:1170 (src/core/graphics/mod.rs:1170)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::load_shader::h4105640d4c5608d2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGetShaderInfoLog
[INFO] [stdout]           >>> referenced by mod.rs:1173 (src/core/graphics/mod.rs:1173)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::load_shader::h4105640d4c5608d2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGetQueryObjectui64v
[INFO] [stdout]           >>> referenced by mod.rs:1814 (src/core/graphics/mod.rs:1814)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::ElapsedQuery::get_result::hfd8c0a4db1ad0dbe) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGenQueries
[INFO] [stdout]           >>> referenced by mod.rs:1789 (src/core/graphics/mod.rs:1789)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::ElapsedQuery::begin_query::h576a3230ea228aa2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glBeginQuery
[INFO] [stdout]           >>> referenced by mod.rs:1791 (src/core/graphics/mod.rs:1791)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::ElapsedQuery::begin_query::h576a3230ea228aa2) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glGetQueryObjectiv
[INFO] [stdout]           >>> referenced by mod.rs:1838 (src/core/graphics/mod.rs:1838)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::ElapsedQuery::is_available::he3423167e027fcc9) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: undefined symbol: glEndQuery
[INFO] [stdout]           >>> referenced by mod.rs:1801 (src/core/graphics/mod.rs:1801)
[INFO] [stdout]           >>>               oxid-e9fe141f80088d5e.oxid.3cd7be8cc77270b1-cgu.10.rcgu.o:(oxid::core::graphics::ElapsedQuery::end_query::h5a38ba9d2d282ac7) in archive /opt/rustwide/target/debug/deps/liboxid-e9fe141f80088d5e.rlib
[INFO] [stdout]           
[INFO] [stdout]           rust-lld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `oxid` (example "basic_shapes") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]    --> src/wasm/mod.rs:311:1
[INFO] [stdout]     |
[INFO] [stdout] 311 | #[no_mangle]
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         vec2(self.x, self.y)
[INFO] [stdout]    |         ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     vec2(rho * theta.cos(), rho * theta.sin())
[INFO] [stdout]    |     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `vec2` in this scope
[INFO] [stdout]   --> src/framework/math.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 81 |     vec2(
[INFO] [stdout]    |     ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/core/graphics/mod.rs:1456:17
[INFO] [stdout]      |
[INFO] [stdout] 1456 |             let mut cache = buffer_cache
[INFO] [stdout]      |                 ----^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/core/graphics/mod.rs:1487:17
[INFO] [stdout]      |
[INFO] [stdout] 1487 |             let mut buffer_data = &mut buffer_cache
[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/core/graphics/mod.rs:1548:13
[INFO] [stdout]      |
[INFO] [stdout] 1548 |         let mut pipeline = &mut ctx.pipelines[self.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/framework/telemetry.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut query = self.queries.get_mut(&name).unwrap();
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0432, E0464.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `oxid` (lib test) due to 11 previous errors; 6 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "fb0f8f3932a23236e44161d370abab9f05cd26a15db8a678d10a54f8385b0e2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb0f8f3932a23236e44161d370abab9f05cd26a15db8a678d10a54f8385b0e2e", kill_on_drop: false }`
[INFO] [stdout] fb0f8f3932a23236e44161d370abab9f05cd26a15db8a678d10a54f8385b0e2e
