[INFO] fetching crate oxid 0.1.0... [INFO] testing oxid-0.1.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-8 [INFO] extracting crate oxid 0.1.0 into /workspace/builds/worker-3-tc1/source [INFO] removed /workspace/builds/worker-3-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-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate oxid 0.1.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded quad-rand v0.1.1 [INFO] [stderr] Downloaded rwasm_macro v0.1.0 [INFO] [stderr] Downloaded rwasm v0.0.1 [INFO] [stderr] Downloaded inflate v0.4.5 [INFO] [stderr] Downloaded png v0.15.3 [INFO] [stderr] Downloaded miniz_oxide v0.5.4 [INFO] [stderr] Downloaded once_cell v1.14.0 [INFO] [stderr] Downloaded glam v0.8.7 [INFO] [stderr] Downloaded backtrace v0.3.66 [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 fontdue v0.4.0 [INFO] [stderr] Downloaded deflate v0.7.20 [INFO] [stderr] Downloaded object v0.29.0 [INFO] [stderr] Downloaded image v0.22.5 [INFO] [stderr] Downloaded libc v0.2.132 [INFO] [stderr] Downloaded gimli v0.26.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7dbe2409ceaeeab454ad1b963caeaf8aa65d3ae9e1c71d10e0887960ee988514 [INFO] running `Command { std: "docker" "start" "-a" "7dbe2409ceaeeab454ad1b963caeaf8aa65d3ae9e1c71d10e0887960ee988514", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7dbe2409ceaeeab454ad1b963caeaf8aa65d3ae9e1c71d10e0887960ee988514", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7dbe2409ceaeeab454ad1b963caeaf8aa65d3ae9e1c71d10e0887960ee988514", kill_on_drop: false }` [INFO] [stdout] 7dbe2409ceaeeab454ad1b963caeaf8aa65d3ae9e1c71d10e0887960ee988514 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3d88c84da42b656645bb55eb0fd1f2942ccbb5beffdb7fe2b0dda8b04b71afcb [INFO] running `Command { std: "docker" "start" "-a" "3d88c84da42b656645bb55eb0fd1f2942ccbb5beffdb7fe2b0dda8b04b71afcb", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling cc v1.0.73 [INFO] [stderr] Compiling adler32 v1.2.0 [INFO] [stderr] Compiling libc v0.2.132 [INFO] [stderr] Compiling crc32fast v1.3.2 [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 byteorder v1.4.3 [INFO] [stderr] Compiling gimli v0.26.2 [INFO] [stderr] Compiling glam v0.10.2 [INFO] [stderr] Compiling miniz_oxide v0.5.4 [INFO] [stderr] Compiling deflate v0.7.20 [INFO] [stderr] Compiling inflate v0.4.5 [INFO] [stderr] Compiling object v0.29.0 [INFO] [stderr] Compiling ahash v0.3.8 [INFO] [stderr] Compiling rustc-demangle v0.1.21 [INFO] [stderr] Compiling backtrace v0.3.66 [INFO] [stderr] Compiling png v0.15.3 [INFO] [stderr] Compiling ttf-parser v0.8.3 [INFO] [stderr] Compiling once_cell v1.14.0 [INFO] [stderr] Compiling rwasm_macro v0.1.0 [INFO] [stderr] Compiling quad-rand v0.1.1 [INFO] [stderr] Compiling image v0.22.5 [INFO] [stderr] Compiling fontdue v0.4.0 [INFO] [stderr] Compiling addr2line v0.17.0 [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 [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 [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 [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 [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 [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 [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 [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 [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 [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 [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 [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::()).as_ref() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [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 [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::()).as_ref() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [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 [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 21.94s [INFO] running `Command { std: "docker" "inspect" "3d88c84da42b656645bb55eb0fd1f2942ccbb5beffdb7fe2b0dda8b04b71afcb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3d88c84da42b656645bb55eb0fd1f2942ccbb5beffdb7fe2b0dda8b04b71afcb", kill_on_drop: false }` [INFO] [stdout] 3d88c84da42b656645bb55eb0fd1f2942ccbb5beffdb7fe2b0dda8b04b71afcb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0562e3c979582f8b7ef7dca97209c313ba27986ec10ecdee40081012ca242448 [INFO] running `Command { std: "docker" "start" "-a" "0562e3c979582f8b7ef7dca97209c313ba27986ec10ecdee40081012ca242448", 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 [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 [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 [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 [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 [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 [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 [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 [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 [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 [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 [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::()).as_ref() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [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 [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::()).as_ref() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [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 [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-1ade978c2d6febe8.rlib [INFO] [stdout] = note: candidate #2: /opt/rustwide/target/debug/deps/libglam-998f6150014159b9.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/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/vec/mod.rs:434:0 [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/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/vec/mod.rs:434:0 [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/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/vec/mod.rs:434:0 [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/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/vec/mod.rs:434:0 [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/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/vec/mod.rs:434:0 [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/c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38/library/alloc/src/vec/mod.rs:434:0 [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] 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] [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] error: linking with `cc` failed: exit status: 1 [INFO] [stdout] | [INFO] [stdout] = note: "cc" "-m64" "/tmp/rustc8b0dnI/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/{liboxid-56bf36c3ab7ce91b,libfontdue-5c903e7c7e4a0966,libttf_parser-27880ac02ddeaca4,libhashbrown-89ad53921f5f6b12,libahash-fb26872b61c1eb02,libimage-7686314f868e0b5e,libpng-61cd959053a2f984,libdeflate-7fdcc7a7f89b3782,libinflate-c69cb21a6df21e8b,libadler32-884c7c82211a01d9,libcrc32fast-6bd2f9a022460d01,libbitflags-e2b4db6c651223da,libnum_rational-3c29d91f551e5818,libnum_iter-7d609eca46be6739,libnum_integer-2007e1a71e3cc632,libnum_traits-13175fd345195611,libbyteorder-379f547b04d51d02,libquad_rand-a5478cc492801bd5,libglam-1ade978c2d6febe8,librwasm-b81792765f054e76,libbacktrace-4998318553eb3df6,libminiz_oxide-8483c9dc36b23d7e,libadler-f4caa73e14204bdd,libobject-fe5ca33c72058cc2,libmemchr-4db6d1834aa19479,liblibc-f5ca323bc60be918,libaddr2line-80c902d98185bedc,libgimli-991155cd8bee0d9d,libcfg_if-33ef6c02a07f9fec,librustc_demangle-75d535d2d5742005,libonce_cell-f44eb74a989470dd}.rlib" "/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/rustc8b0dnI/raw-dylibs" "-B/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/examples/basic_shapes-63ad752c0383d0ce" "-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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::update_texture_part::h326a8d5ba075f659) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by texture.rs:153 (src/core/graphics/texture.rs:153) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::new::h0fabd00f701beb79) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::update_texture_part::h326a8d5ba075f659) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::new::h0fabd00f701beb79) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::new::h0fabd00f701beb79) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::new::h0fabd00f701beb79) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by texture.rs:170 (src/core/graphics/texture.rs:170) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::new::h0fabd00f701beb79) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by texture.rs:171 (src/core/graphics/texture.rs:171) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.14.rcgu.o:(oxid::core::graphics::texture::Texture::new::h0fabd00f701beb79) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced 1 more times [INFO] [stdout] [INFO] [stdout] rust-lld: error: undefined symbol: now [INFO] [stdout] >>> referenced by mod.rs:27 (src/core/mod.rs:27) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.10.rcgu.o:(oxid::core::date::now::hb32aaf5bd58f6500) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] [INFO] [stdout] rust-lld: error: undefined symbol: canvas_width [INFO] [stdout] >>> referenced by mod.rs:304 (src/wasm/mod.rs:304) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.10.rcgu.o:(oxid::wasm::oxid_width::hd3fbb406434badb4) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] [INFO] [stdout] rust-lld: error: undefined symbol: canvas_height [INFO] [stdout] >>> referenced by mod.rs:308 (src/wasm/mod.rs:308) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.10.rcgu.o:(oxid::wasm::oxid_height::h21569872a05fe69a) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] [INFO] [stdout] rust-lld: error: undefined symbol: init_opengl [INFO] [stdout] >>> referenced by mod.rs:296 (src/wasm/mod.rs:296) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.10.rcgu.o:(oxid::wasm::oxid_run::hc5596c9de71c2e5f) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] [INFO] [stdout] rust-lld: error: undefined symbol: console_log [INFO] [stdout] >>> referenced by mod.rs:292 (src/wasm/mod.rs:292) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.10.rcgu.o:(oxid::wasm::oxid_run::_$u7b$$u7b$closure$u7d$$u7d$::hf8924aa352e01d8d) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.02.rcgu.o:(oxid::framework::quad_gl::Texture2D::grab_screen::h9be87b417c9fc003) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by mod.rs:484 (src/core/graphics/mod.rs:484) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::GlCache::bind_texture::h0b2c72aa3ba1ef8a) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.02.rcgu.o:(oxid::framework::quad_gl::Texture2D::grab_screen::h9be87b417c9fc003) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::RenderPass::new::h0929213c0b0bc7f7) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::RenderPass::new::h0929213c0b0bc7f7) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by mod.rs:583 (src/core/graphics/mod.rs:583) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::RenderPass::new::h0929213c0b0bc7f7) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by mod.rs:1040 (src/core/graphics/mod.rs:1040) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::Context::begin_pass::h1bd66322726a606b) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::RenderPass::new::h0929213c0b0bc7f7) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by mod.rs:575 (src/core/graphics/mod.rs:575) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::RenderPass::new::h0929213c0b0bc7f7) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::load_shader::h05d86bd3f97595ef) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::load_shader::h05d86bd3f97595ef) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::load_shader::h05d86bd3f97595ef) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::load_shader::h05d86bd3f97595ef) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.rlib [INFO] [stdout] >>> referenced by mod.rs:1170 (src/core/graphics/mod.rs:1170) [INFO] [stdout] >>> oxid-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::load_shader::h05d86bd3f97595ef) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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-56bf36c3ab7ce91b.oxid.4f8eee556d96f70a-cgu.03.rcgu.o:(oxid::core::graphics::load_shader::h05d86bd3f97595ef) in archive /opt/rustwide/target/debug/deps/liboxid-56bf36c3ab7ce91b.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] [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" "0562e3c979582f8b7ef7dca97209c313ba27986ec10ecdee40081012ca242448", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0562e3c979582f8b7ef7dca97209c313ba27986ec10ecdee40081012ca242448", kill_on_drop: false }` [INFO] [stdout] 0562e3c979582f8b7ef7dca97209c313ba27986ec10ecdee40081012ca242448