[INFO] fetching crate mallumo-gls 0.43.0...
[INFO] testing mallumo-gls-0.43.0 against 1.69.0 for beta-1.70-1
[INFO] extracting crate mallumo-gls 0.43.0 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate mallumo-gls 0.43.0 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate mallumo-gls 0.43.0
[INFO] finished tweaking crates.io crate mallumo-gls 0.43.0
[INFO] tweaked toml for crates.io crate mallumo-gls 0.43.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+1.69.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded core-foundation v0.4.6
[INFO] [stderr]   Downloaded dlib v0.3.1
[INFO] [stderr]   Downloaded core-foundation-sys v0.4.6
[INFO] [stderr]   Downloaded wayland-scanner v0.9.10
[INFO] [stderr]   Downloaded xml-rs v0.6.1
[INFO] [stderr]   Downloaded wayland-window v0.13.3
[INFO] [stderr]   Downloaded core-foundation-sys v0.3.1
[INFO] [stderr]   Downloaded dwmapi-sys v0.1.1
[INFO] [stderr]   Downloaded wayland-sys v0.9.10
[INFO] [stderr]   Downloaded core-foundation v0.3.0
[INFO] [stderr]   Downloaded wayland-scanner v0.12.5
[INFO] [stderr]   Downloaded wayland-sys v0.12.5
[INFO] [stderr]   Downloaded gl_generator v0.7.0
[INFO] [stderr]   Downloaded wayland-kbd v0.13.1
[INFO] [stderr]   Downloaded shell32-sys v0.1.2
[INFO] [stderr]   Downloaded gdi32-sys v0.1.2
[INFO] [stderr]   Downloaded token_store v0.1.2
[INFO] [stderr]   Downloaded core-graphics v0.8.2
[INFO] [stderr]   Downloaded user32-sys v0.1.3
[INFO] [stderr]   Downloaded wayland-client v0.9.10
[INFO] [stderr]   Downloaded cocoa v0.9.2
[INFO] [stderr]   Downloaded wayland-client v0.12.5
[INFO] [stderr]   Downloaded wayland-protocols v0.12.5
[INFO] [stderr]   Downloaded cocoa v0.11.0
[INFO] [stderr]   Downloaded core-graphics v0.10.0
[INFO] [stderr]   Downloaded glutin v0.11.0
[INFO] [stderr]   Downloaded winit v0.9.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 18c915e1ad8448cfef19219cd663a16b916fd8a819aece9de5204f06a01fbd30
[INFO] running `Command { std: "docker" "start" "-a" "18c915e1ad8448cfef19219cd663a16b916fd8a819aece9de5204f06a01fbd30", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "18c915e1ad8448cfef19219cd663a16b916fd8a819aece9de5204f06a01fbd30", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "18c915e1ad8448cfef19219cd663a16b916fd8a819aece9de5204f06a01fbd30", kill_on_drop: false }`
[INFO] [stdout] 18c915e1ad8448cfef19219cd663a16b916fd8a819aece9de5204f06a01fbd30
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 324b4178758e157d40a45b974b5b34017625e91b1807b9b0462c43a50dde02f4
[INFO] running `Command { std: "docker" "start" "-a" "324b4178758e157d40a45b974b5b34017625e91b1807b9b0462c43a50dde02f4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.142
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling siphasher v0.2.3
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling serde v0.9.15
[INFO] [stderr]    Compiling dtoa v0.4.8
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling itoa v0.3.4
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling rustix v0.37.18
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling libloading v0.6.7
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling token_store v0.1.2
[INFO] [stderr]    Compiling xml-rs v0.6.1
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling phf_shared v0.7.24
[INFO] [stderr]    Compiling dlib v0.4.2
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling phf v0.7.24
[INFO] [stderr]    Compiling pkg-config v0.3.26
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling wayland-sys v0.12.5
[INFO] [stderr]    Compiling linux-raw-sys v0.3.6
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling wayland-scanner v0.9.10
[INFO] [stderr]    Compiling wayland-scanner v0.12.5
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling gl_generator v0.7.0
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling gimli v0.27.2
[INFO] [stderr]    Compiling xml-rs v0.8.4
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]    Compiling object v0.30.3
[INFO] [stderr]    Compiling miniz_oxide v0.6.2
[INFO] [stderr]    Compiling wayland-client v0.9.10
[INFO] [stderr]    Compiling wayland-client v0.12.5
[INFO] [stderr]    Compiling wayland-protocols v0.12.5
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling memmap v0.6.2
[INFO] [stderr]    Compiling gl_generator v0.10.0
[INFO] [stderr]    Compiling backtrace v0.3.67
[INFO] [stderr]    Compiling glutin v0.11.0
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling serde_json v0.9.10
[INFO] [stderr]    Compiling mallumo-gls v0.43.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling phf_generator v0.7.24
[INFO] [stderr]    Compiling wayland-kbd v0.13.1
[INFO] [stderr]    Compiling phf_codegen v0.7.24
[INFO] [stderr]    Compiling target_build_utils v0.3.1
[INFO] [stderr]    Compiling addr2line v0.19.0
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling wayland-window v0.13.3
[INFO] [stderr]    Compiling error-chain v0.11.0
[INFO] [stderr]    Compiling winit v0.9.0
[INFO] [stderr]    Compiling libloading v0.3.4
[INFO] [stderr]    Compiling dlib v0.3.1
[INFO] [stderr]    Compiling wayland-sys v0.9.10
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/framebuffer/framebuffer.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn set_state(&mut self, FramebufferState);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FramebufferState`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/framebuffer/framebuffer.rs:287:72
[INFO] [stdout]     |
[INFO] [stdout] 287 |                     .chain_err(|| "Could not attach stencil texture")?;;
[INFO] [stdout]     |                                                                        ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/framebuffer/framebuffer.rs:293:75
[INFO] [stdout]     |
[INFO] [stdout] 293 |                 ).chain_err(|| "Could not attach depth stencil texture")?;;
[INFO] [stdout]     |                                                                           ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/shader.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/shader.rs:81:39
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/program.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/shader_program.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/shader_program.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/get.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/get.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/framebuffer/mod.rs:65:27
[INFO] [stdout]    |
[INFO] [stdout] 65 |     AttachTexture(&'a mut Texture),
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     AttachTexture(&'a mut dyn Texture),
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/framebuffer/mod.rs:67:26
[INFO] [stdout]    |
[INFO] [stdout] 67 |         texture: &'a mut Texture,
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |         texture: &'a mut dyn Texture,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/renderer.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub buffer: &'a Buffer,
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub buffer: &'a dyn Buffer,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:18:23
[INFO] [stdout]    |
[INFO] [stdout] 18 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 38 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         indices: &'a Buffer,
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |         indices: &'a dyn Buffer,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:59:30
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub pipeline: Option<&'a Pipeline>,
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub pipeline: Option<&'a dyn Pipeline>,
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub images: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub images: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub images_read: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub images_read: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub images_write: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub images_write: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub storages_read: Vec<(&'a Buffer, usize)>,
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub storages_read: Vec<(&'a dyn Buffer, usize)>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:82:39
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub storage_range_reads: Vec<(&'a Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub storage_range_reads: Vec<(&'a dyn Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub uniform_buffers: Vec<(&'a Buffer, usize)>,
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub uniform_buffers: Vec<(&'a dyn Buffer, usize)>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:86:34
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub uniform_ranges: Vec<(&'a Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub uniform_ranges: Vec<(&'a dyn Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/mallumo-gls-974fb34caaf24f14/out/bindings.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 |         fn metaloadfn(loadfn: &mut FnMut(&'static str) -> *const __gl_imports::raw::c_void,
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |         fn metaloadfn(loadfn: &mut dyn FnMut(&'static str) -> *const __gl_imports::raw::c_void,
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:94:33
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn arrays(pipeline: &'a Pipeline, first: usize, count: usize) -> DrawCommand<'a> {
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn arrays(pipeline: &'a dyn Pipeline, first: usize, count: usize) -> DrawCommand<'a> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:134:42
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a dyn Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:134:66
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                                                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a dyn Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 175 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 224 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:273:23
[INFO] [stdout]     |
[INFO] [stdout] 273 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 273 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:274:23
[INFO] [stdout]     |
[INFO] [stdout] 274 |         indirect: &'a Buffer,
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 |         indirect: &'a dyn Buffer,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:322:23
[INFO] [stdout]     |
[INFO] [stdout] 322 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 322 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:323:22
[INFO] [stdout]     |
[INFO] [stdout] 323 |         indices: &'a Buffer,
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 323 |         indices: &'a dyn Buffer,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:324:23
[INFO] [stdout]     |
[INFO] [stdout] 324 |         indirect: &'a Buffer,
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |         indirect: &'a dyn Buffer,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:527:48
[INFO] [stdout]     |
[INFO] [stdout] 527 |     pub fn storage_read(mut self, storage: &'a Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 527 |     pub fn storage_read(mut self, storage: &'a dyn Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:542:57
[INFO] [stdout]     |
[INFO] [stdout] 542 |     pub fn storage_range_read<T>(mut self, storage: &'a Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 542 |     pub fn storage_range_read<T>(mut self, storage: &'a dyn Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:711:43
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub fn uniform(mut self, storage: &'a Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub fn uniform(mut self, storage: &'a dyn Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:716:52
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn uniform_range<T>(mut self, storage: &'a Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn uniform_range<T>(mut self, storage: &'a dyn Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `internal_format` is never read
[INFO] [stdout]   --> src/texture/texture_1d.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 6  | pub struct Texture1D {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     internal_format: TextureInternalFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Texture1D` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/shader.rs:81:39
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/program.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/shader_program.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `VertexAttribArray` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:41:15
[INFO] [stdout]    |
[INFO] [stdout] 41 |         const VertexAttribArray = gl::VERTEX_ATTRIB_ARRAY_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `VERTEX_ATTRIB_ARRAY`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ElementArray` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         const ElementArray = gl::ELEMENT_ARRAY_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `ELEMENT_ARRAY`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `UniformBarrier` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         const UniformBarrier = gl::UNIFORM_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `UNIFORM_BARRIER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TextureFetch` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |         const TextureFetch = gl::TEXTURE_FETCH_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `TEXTURE_FETCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ShaderImageAccess` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:49:15
[INFO] [stdout]    |
[INFO] [stdout] 49 |         const ShaderImageAccess = gl::SHADER_IMAGE_ACCESS_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SHADER_IMAGE_ACCESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Command` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:51:15
[INFO] [stdout]    |
[INFO] [stdout] 51 |         const Command = gl::COMMAND_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^ help: convert the identifier to upper case: `COMMAND`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `PixelBuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 |         const PixelBuffer = gl::PIXEL_BUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `PIXEL_BUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TextureUpdate` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |         const TextureUpdate = gl::TEXTURE_UPDATE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `TEXTURE_UPDATE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BufferUpdate` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         const BufferUpdate = gl::BUFFER_UPDATE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `BUFFER_UPDATE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Framebuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         const Framebuffer = gl::FRAMEBUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `FRAMEBUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TransformFeedback` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:61:15
[INFO] [stdout]    |
[INFO] [stdout] 61 |         const TransformFeedback = gl::TRANSFORM_FEEDBACK_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `TRANSFORM_FEEDBACK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `AtomicCounter` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:63:15
[INFO] [stdout]    |
[INFO] [stdout] 63 |         const AtomicCounter = gl::ATOMIC_COUNTER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `ATOMIC_COUNTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ShaderStorage` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:65:15
[INFO] [stdout]    |
[INFO] [stdout] 65 |         const ShaderStorage = gl::SHADER_STORAGE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SHADER_STORAGE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `QueryBuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:67:15
[INFO] [stdout]    |
[INFO] [stdout] 67 |         const QueryBuffer = gl::QUERY_BUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `QUERY_BUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `All` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:69:15
[INFO] [stdout]    |
[INFO] [stdout] 69 |         const All = gl::ALL_BARRIER_BITS;
[INFO] [stdout]    |               ^^^ help: convert the identifier to upper case: `ALL`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/get.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/renderer.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |                     bind_buffer(BindBufferTarget::ElementArrayBuffer, indices.get_id());
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 62 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 25.31s
[INFO] running `Command { std: "docker" "inspect" "324b4178758e157d40a45b974b5b34017625e91b1807b9b0462c43a50dde02f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "324b4178758e157d40a45b974b5b34017625e91b1807b9b0462c43a50dde02f4", kill_on_drop: false }`
[INFO] [stdout] 324b4178758e157d40a45b974b5b34017625e91b1807b9b0462c43a50dde02f4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 56211ef018ca3831d8f7a57ee3fd72f2cf3cfb54b2b69565bd6c7abde71f0ded
[INFO] running `Command { std: "docker" "start" "-a" "56211ef018ca3831d8f7a57ee3fd72f2cf3cfb54b2b69565bd6c7abde71f0ded", kill_on_drop: false }`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/framebuffer/framebuffer.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn set_state(&mut self, FramebufferState);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FramebufferState`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/framebuffer/framebuffer.rs:287:72
[INFO] [stdout]     |
[INFO] [stdout] 287 |                     .chain_err(|| "Could not attach stencil texture")?;;
[INFO] [stdout]     |                                                                        ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/framebuffer/framebuffer.rs:293:75
[INFO] [stdout]     |
[INFO] [stdout] 293 |                 ).chain_err(|| "Could not attach depth stencil texture")?;;
[INFO] [stdout]     |                                                                           ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/shader.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/shader.rs:81:39
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/program.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/shader_program.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/shader_program.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/get.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/get.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/framebuffer/mod.rs:65:27
[INFO] [stdout]    |
[INFO] [stdout] 65 |     AttachTexture(&'a mut Texture),
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     AttachTexture(&'a mut dyn Texture),
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/framebuffer/mod.rs:67:26
[INFO] [stdout]    |
[INFO] [stdout] 67 |         texture: &'a mut Texture,
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |         texture: &'a mut dyn Texture,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/renderer.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub buffer: &'a Buffer,
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub buffer: &'a dyn Buffer,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:18:23
[INFO] [stdout]    |
[INFO] [stdout] 18 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 38 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         indices: &'a Buffer,
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |         indices: &'a dyn Buffer,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:59:30
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub pipeline: Option<&'a Pipeline>,
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub pipeline: Option<&'a dyn Pipeline>,
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub images: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub images: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub images_read: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub images_read: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub images_write: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub images_write: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub storages_read: Vec<(&'a Buffer, usize)>,
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub storages_read: Vec<(&'a dyn Buffer, usize)>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:82:39
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub storage_range_reads: Vec<(&'a Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub storage_range_reads: Vec<(&'a dyn Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub uniform_buffers: Vec<(&'a Buffer, usize)>,
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub uniform_buffers: Vec<(&'a dyn Buffer, usize)>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:86:34
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub uniform_ranges: Vec<(&'a Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub uniform_ranges: Vec<(&'a dyn Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/mallumo-gls-974fb34caaf24f14/out/bindings.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 |         fn metaloadfn(loadfn: &mut FnMut(&'static str) -> *const __gl_imports::raw::c_void,
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |         fn metaloadfn(loadfn: &mut dyn FnMut(&'static str) -> *const __gl_imports::raw::c_void,
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:94:33
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn arrays(pipeline: &'a Pipeline, first: usize, count: usize) -> DrawCommand<'a> {
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn arrays(pipeline: &'a dyn Pipeline, first: usize, count: usize) -> DrawCommand<'a> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:134:42
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a dyn Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:134:66
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                                                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a dyn Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 175 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 224 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:273:23
[INFO] [stdout]     |
[INFO] [stdout] 273 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 273 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:274:23
[INFO] [stdout]     |
[INFO] [stdout] 274 |         indirect: &'a Buffer,
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 |         indirect: &'a dyn Buffer,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:322:23
[INFO] [stdout]     |
[INFO] [stdout] 322 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 322 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:323:22
[INFO] [stdout]     |
[INFO] [stdout] 323 |         indices: &'a Buffer,
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 323 |         indices: &'a dyn Buffer,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:324:23
[INFO] [stdout]     |
[INFO] [stdout] 324 |         indirect: &'a Buffer,
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |         indirect: &'a dyn Buffer,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:527:48
[INFO] [stdout]     |
[INFO] [stdout] 527 |     pub fn storage_read(mut self, storage: &'a Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 527 |     pub fn storage_read(mut self, storage: &'a dyn Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:542:57
[INFO] [stdout]     |
[INFO] [stdout] 542 |     pub fn storage_range_read<T>(mut self, storage: &'a Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 542 |     pub fn storage_range_read<T>(mut self, storage: &'a dyn Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:711:43
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub fn uniform(mut self, storage: &'a Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub fn uniform(mut self, storage: &'a dyn Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:716:52
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn uniform_range<T>(mut self, storage: &'a Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn uniform_range<T>(mut self, storage: &'a dyn Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `internal_format` is never read
[INFO] [stdout]   --> src/texture/texture_1d.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 6  | pub struct Texture1D {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     internal_format: TextureInternalFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Texture1D` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/shader.rs:81:39
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/program.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/shader_program.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `VertexAttribArray` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:41:15
[INFO] [stdout]    |
[INFO] [stdout] 41 |         const VertexAttribArray = gl::VERTEX_ATTRIB_ARRAY_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `VERTEX_ATTRIB_ARRAY`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ElementArray` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         const ElementArray = gl::ELEMENT_ARRAY_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `ELEMENT_ARRAY`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `UniformBarrier` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         const UniformBarrier = gl::UNIFORM_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `UNIFORM_BARRIER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TextureFetch` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |         const TextureFetch = gl::TEXTURE_FETCH_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `TEXTURE_FETCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ShaderImageAccess` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:49:15
[INFO] [stdout]    |
[INFO] [stdout] 49 |         const ShaderImageAccess = gl::SHADER_IMAGE_ACCESS_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SHADER_IMAGE_ACCESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Command` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:51:15
[INFO] [stdout]    |
[INFO] [stdout] 51 |         const Command = gl::COMMAND_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^ help: convert the identifier to upper case: `COMMAND`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `PixelBuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 |         const PixelBuffer = gl::PIXEL_BUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `PIXEL_BUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TextureUpdate` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |         const TextureUpdate = gl::TEXTURE_UPDATE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `TEXTURE_UPDATE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BufferUpdate` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         const BufferUpdate = gl::BUFFER_UPDATE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `BUFFER_UPDATE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Framebuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         const Framebuffer = gl::FRAMEBUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `FRAMEBUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TransformFeedback` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:61:15
[INFO] [stdout]    |
[INFO] [stdout] 61 |         const TransformFeedback = gl::TRANSFORM_FEEDBACK_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `TRANSFORM_FEEDBACK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `AtomicCounter` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:63:15
[INFO] [stdout]    |
[INFO] [stdout] 63 |         const AtomicCounter = gl::ATOMIC_COUNTER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `ATOMIC_COUNTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ShaderStorage` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:65:15
[INFO] [stdout]    |
[INFO] [stdout] 65 |         const ShaderStorage = gl::SHADER_STORAGE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SHADER_STORAGE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `QueryBuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:67:15
[INFO] [stdout]    |
[INFO] [stdout] 67 |         const QueryBuffer = gl::QUERY_BUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `QUERY_BUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling mallumo-gls v0.43.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: associated constant `All` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:69:15
[INFO] [stdout]    |
[INFO] [stdout] 69 |         const All = gl::ALL_BARRIER_BITS;
[INFO] [stdout]    |               ^^^ help: convert the identifier to upper case: `ALL`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/get.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/renderer.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |                     bind_buffer(BindBufferTarget::ElementArrayBuffer, indices.get_id());
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 62 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]   --> examples/window.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::path::Path;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32`
[INFO] [stdout]   --> examples/window.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::f32;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> examples/window.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> examples/window.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32`
[INFO] [stdout]   --> examples/triangle.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::f32;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> examples/triangle.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> examples/triangle.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/window.rs:41:38
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut renderer = Renderer::new(&gl_window).chain_err(|| "Unable to create window")?;
[INFO] [stdout]    |                        ------------- ^^^^^^^^^^ expected `&Context`, found `&GlWindow`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&glutin::Context`
[INFO] [stdout]               found reference `&GlWindow`
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> /opt/rustwide/workdir/src/renderer.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn new(context: &glutin::Context) -> Result<Renderer> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/triangle.rs:41:38
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let mut renderer = Renderer::new(&gl_window).chain_err(|| "Unable to create window")?;
[INFO] [stdout]    |                        ------------- ^^^^^^^^^^ expected `&Context`, found `&GlWindow`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&glutin::Context`
[INFO] [stdout]               found reference `&GlWindow`
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> /opt/rustwide/workdir/src/renderer.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn new(context: &glutin::Context) -> Result<Renderer> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `make_current` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/window.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | /     renderer
[INFO] [stdout] 43 | |         .make_current()
[INFO] [stdout]    | |         -^^^^^^^^^^^^ method not found in `Renderer`
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mut_default_framebuffer` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/window.rs:46:14
[INFO] [stdout]    |
[INFO] [stdout] 46 |     renderer.mut_default_framebuffer().set_viewport(Viewport {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `get_mut_default_framebuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `make_current` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/triangle.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | /     renderer
[INFO] [stdout] 43 | |         .make_current()
[INFO] [stdout]    | |         -^^^^^^^^^^^^ method not found in `Renderer`
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/window.rs:49:16
[INFO] [stdout]    |
[INFO] [stdout] 49 |         width: width,
[INFO] [stdout]    |                ^^^^^ expected `usize`, found `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/window.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |         height: height,
[INFO] [stdout]    |                 ^^^^^^ expected `usize`, found `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mut_default_framebuffer` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/triangle.rs:57:14
[INFO] [stdout]    |
[INFO] [stdout] 57 |     renderer.mut_default_framebuffer().set_viewport(Viewport {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `get_mut_default_framebuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `mut_default_framebuffer` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/window.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 52 | /     renderer
[INFO] [stdout] 53 | |         .mut_default_framebuffer()
[INFO] [stdout]    | |         -^^^^^^^^^^^^^^^^^^^^^^^ help: there is a method with a similar name: `get_mut_default_framebuffer`
[INFO] [stdout]    | |_________|
[INFO] [stdout]    | 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/triangle.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |         width: width,
[INFO] [stdout]    |                ^^^^^ expected `usize`, found `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/triangle.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |         height: height,
[INFO] [stdout]    |                 ^^^^^^ expected `usize`, found `u32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `swap_buffers` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/window.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 |         renderer.swap_buffers();
[INFO] [stdout]    |                  ^^^^^^^^^^^^ method not found in `Renderer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `draw_arrays` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/triangle.rs:74:18
[INFO] [stdout]    |
[INFO] [stdout] 74 |         renderer.draw_arrays(
[INFO] [stdout]    |         ---------^^^^^^^^^^^ method not found in `Renderer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mallumo-gls` due to 8 previous errors; 4 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no method named `swap_buffers` found for struct `mallumo_gls::Renderer` in the current scope
[INFO] [stdout]   --> examples/triangle.rs:82:18
[INFO] [stdout]    |
[INFO] [stdout] 82 |         renderer.swap_buffers();
[INFO] [stdout]    |                  ^^^^^^^^^^^^ method not found in `Renderer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors; 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mallumo-gls` due to 8 previous errors; 3 warnings emitted
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/framebuffer/framebuffer.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 |     fn set_state(&mut self, FramebufferState);
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FramebufferState`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/framebuffer/framebuffer.rs:287:72
[INFO] [stdout]     |
[INFO] [stdout] 287 |                     .chain_err(|| "Could not attach stencil texture")?;;
[INFO] [stdout]     |                                                                        ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/framebuffer/framebuffer.rs:293:75
[INFO] [stdout]     |
[INFO] [stdout] 293 |                 ).chain_err(|| "Could not attach depth stencil texture")?;;
[INFO] [stdout]     |                                                                           ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/shader.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/shader.rs:81:39
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/program.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/shader_program.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/shader_program.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/raw/get.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/raw/get.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/framebuffer/mod.rs:65:27
[INFO] [stdout]    |
[INFO] [stdout] 65 |     AttachTexture(&'a mut Texture),
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     AttachTexture(&'a mut dyn Texture),
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/framebuffer/mod.rs:67:26
[INFO] [stdout]    |
[INFO] [stdout] 67 |         texture: &'a mut Texture,
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |         texture: &'a mut dyn Texture,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/renderer.rs:27:21
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub buffer: &'a Buffer,
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub buffer: &'a dyn Buffer,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:18:23
[INFO] [stdout]    |
[INFO] [stdout] 18 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 38 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         indices: &'a Buffer,
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 43 |         indices: &'a dyn Buffer,
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |         indirect: &'a Buffer,
[INFO] [stdout]    |                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |         indirect: &'a dyn Buffer,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:59:30
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub pipeline: Option<&'a Pipeline>,
[INFO] [stdout]    |                              ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub pipeline: Option<&'a dyn Pipeline>,
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:64:26
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub images: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub images: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub images_read: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                               ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub images_read: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub images_write: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub images_write: Vec<(&'a dyn Texture, usize, usize, ImageInternalFormat)>,
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub storages_read: Vec<(&'a Buffer, usize)>,
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub storages_read: Vec<(&'a dyn Buffer, usize)>,
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:82:39
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub storage_range_reads: Vec<(&'a Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                       ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub storage_range_reads: Vec<(&'a dyn Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub uniform_buffers: Vec<(&'a Buffer, usize)>,
[INFO] [stdout]    |                                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub uniform_buffers: Vec<(&'a dyn Buffer, usize)>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:86:34
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub uniform_ranges: Vec<(&'a Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub uniform_ranges: Vec<(&'a dyn Buffer, usize, usize, usize)>,
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/mallumo-gls-974fb34caaf24f14/out/bindings.rs:9:36
[INFO] [stdout]   |
[INFO] [stdout] 9 |         fn metaloadfn(loadfn: &mut FnMut(&'static str) -> *const __gl_imports::raw::c_void,
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |         fn metaloadfn(loadfn: &mut dyn FnMut(&'static str) -> *const __gl_imports::raw::c_void,
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/draw.rs:94:33
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn arrays(pipeline: &'a Pipeline, first: usize, count: usize) -> DrawCommand<'a> {
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn arrays(pipeline: &'a dyn Pipeline, first: usize, count: usize) -> DrawCommand<'a> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:134:42
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                          ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a dyn Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:134:66
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                                                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn arrays_indirect(pipeline: &'a Pipeline, indirect: &'a dyn Buffer, offset: usize) -> DrawCommand<'a> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:175:23
[INFO] [stdout]     |
[INFO] [stdout] 175 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 175 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:224:23
[INFO] [stdout]     |
[INFO] [stdout] 224 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 224 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:273:23
[INFO] [stdout]     |
[INFO] [stdout] 273 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 273 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:274:23
[INFO] [stdout]     |
[INFO] [stdout] 274 |         indirect: &'a Buffer,
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 274 |         indirect: &'a dyn Buffer,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:322:23
[INFO] [stdout]     |
[INFO] [stdout] 322 |         pipeline: &'a Pipeline,
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 322 |         pipeline: &'a dyn Pipeline,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:323:22
[INFO] [stdout]     |
[INFO] [stdout] 323 |         indices: &'a Buffer,
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 323 |         indices: &'a dyn Buffer,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:324:23
[INFO] [stdout]     |
[INFO] [stdout] 324 |         indirect: &'a Buffer,
[INFO] [stdout]     |                       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |         indirect: &'a dyn Buffer,
[INFO] [stdout]     |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:527:48
[INFO] [stdout]     |
[INFO] [stdout] 527 |     pub fn storage_read(mut self, storage: &'a Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 527 |     pub fn storage_read(mut self, storage: &'a dyn Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:542:57
[INFO] [stdout]     |
[INFO] [stdout] 542 |     pub fn storage_range_read<T>(mut self, storage: &'a Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 542 |     pub fn storage_range_read<T>(mut self, storage: &'a dyn Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:711:43
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub fn uniform(mut self, storage: &'a Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 711 |     pub fn uniform(mut self, storage: &'a dyn Buffer, location: usize) -> Self {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/draw.rs:716:52
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn uniform_range<T>(mut self, storage: &'a Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 716 |     pub fn uniform_range<T>(mut self, storage: &'a dyn Buffer, location: usize, offset: usize, size: usize) -> Self {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `internal_format` is never read
[INFO] [stdout]   --> src/texture/texture_1d.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 6  | pub struct Texture1D {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 10 |     internal_format: TextureInternalFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Texture1D` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/shader.rs:81:39
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/program.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/shader_program.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `VertexAttribArray` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:41:15
[INFO] [stdout]    |
[INFO] [stdout] 41 |         const VertexAttribArray = gl::VERTEX_ATTRIB_ARRAY_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `VERTEX_ATTRIB_ARRAY`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ElementArray` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         const ElementArray = gl::ELEMENT_ARRAY_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `ELEMENT_ARRAY`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `UniformBarrier` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         const UniformBarrier = gl::UNIFORM_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `UNIFORM_BARRIER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TextureFetch` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |         const TextureFetch = gl::TEXTURE_FETCH_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `TEXTURE_FETCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ShaderImageAccess` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:49:15
[INFO] [stdout]    |
[INFO] [stdout] 49 |         const ShaderImageAccess = gl::SHADER_IMAGE_ACCESS_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SHADER_IMAGE_ACCESS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Command` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:51:15
[INFO] [stdout]    |
[INFO] [stdout] 51 |         const Command = gl::COMMAND_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^ help: convert the identifier to upper case: `COMMAND`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `PixelBuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 |         const PixelBuffer = gl::PIXEL_BUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `PIXEL_BUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TextureUpdate` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |         const TextureUpdate = gl::TEXTURE_UPDATE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `TEXTURE_UPDATE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BufferUpdate` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |         const BufferUpdate = gl::BUFFER_UPDATE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `BUFFER_UPDATE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Framebuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         const Framebuffer = gl::FRAMEBUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `FRAMEBUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `TransformFeedback` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:61:15
[INFO] [stdout]    |
[INFO] [stdout] 61 |         const TransformFeedback = gl::TRANSFORM_FEEDBACK_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `TRANSFORM_FEEDBACK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `AtomicCounter` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:63:15
[INFO] [stdout]    |
[INFO] [stdout] 63 |         const AtomicCounter = gl::ATOMIC_COUNTER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `ATOMIC_COUNTER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `ShaderStorage` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:65:15
[INFO] [stdout]    |
[INFO] [stdout] 65 |         const ShaderStorage = gl::SHADER_STORAGE_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SHADER_STORAGE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `QueryBuffer` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:67:15
[INFO] [stdout]    |
[INFO] [stdout] 67 |         const QueryBuffer = gl::QUERY_BUFFER_BARRIER_BIT;
[INFO] [stdout]    |               ^^^^^^^^^^^ help: convert the identifier to upper case: `QUERY_BUFFER`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `All` should have an upper case name
[INFO] [stdout]   --> src/raw/sync.rs:69:15
[INFO] [stdout]    |
[INFO] [stdout] 69 |         const All = gl::ALL_BARRIER_BITS;
[INFO] [stdout]    |               ^^^ help: convert the identifier to upper case: `ALL`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/raw/get.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let mut value: gl::types::GLint = uninitialized();
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/renderer.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |                     bind_buffer(BindBufferTarget::ElementArrayBuffer, indices.get_id());
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 62 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "56211ef018ca3831d8f7a57ee3fd72f2cf3cfb54b2b69565bd6c7abde71f0ded", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "56211ef018ca3831d8f7a57ee3fd72f2cf3cfb54b2b69565bd6c7abde71f0ded", kill_on_drop: false }`
[INFO] [stdout] 56211ef018ca3831d8f7a57ee3fd72f2cf3cfb54b2b69565bd6c7abde71f0ded
