[INFO] fetching crate hgl 0.0.1...
[INFO] checking hgl-0.0.1 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate hgl 0.0.1 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate hgl 0.0.1 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate hgl 0.0.1
[INFO] finished tweaking crates.io crate hgl 0.0.1
[INFO] tweaked toml for crates.io crate hgl 0.0.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] crate crates.io crate hgl 0.0.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded gl v0.13.0
[INFO] [stderr]   Downloaded glfw v0.29.0
[INFO] [stderr]   Downloaded cmake v0.1.40
[INFO] [stderr]   Downloaded gl_generator v0.13.0
[INFO] [stderr]   Downloaded log v0.4.7
[INFO] [stderr]   Downloaded xml-rs v0.8.0
[INFO] [stderr]   Downloaded cc v1.0.37
[INFO] [stderr]   Downloaded libc v0.2.60
[INFO] [stderr]   Downloaded glfw-sys v3.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6df0ee2fb6e3f8f8b095f5262948094be7be8df477b3b8a7c3d800ce207ca0fa
[INFO] running `Command { std: "docker" "start" "-a" "6df0ee2fb6e3f8f8b095f5262948094be7be8df477b3b8a7c3d800ce207ca0fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6df0ee2fb6e3f8f8b095f5262948094be7be8df477b3b8a7c3d800ce207ca0fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6df0ee2fb6e3f8f8b095f5262948094be7be8df477b3b8a7c3d800ce207ca0fa", kill_on_drop: false }`
[INFO] [stdout] 6df0ee2fb6e3f8f8b095f5262948094be7be8df477b3b8a7c3d800ce207ca0fa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5b79045408c28cc4f3d43e3edabfb3308c3a45ca7016f2d6f8e1e270b85648e4
[INFO] running `Command { std: "docker" "start" "-a" "5b79045408c28cc4f3d43e3edabfb3308c3a45ca7016f2d6f8e1e270b85648e4", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.7
[INFO] [stderr]    Compiling cc v1.0.37
[INFO] [stderr]    Compiling cfg-if v0.1.9
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling libc v0.2.60
[INFO] [stderr]     Checking nom v1.2.4
[INFO] [stderr]     Checking semver v0.2.3
[INFO] [stderr]    Compiling cmake v0.1.40
[INFO] [stderr]    Compiling gl_generator v0.13.0
[INFO] [stderr]    Compiling glfw-sys v3.3.0
[INFO] [stderr]    Compiling gl v0.13.0
[INFO] [stderr]     Checking glfw v0.29.0
[INFO] [stderr]     Checking hgl v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved imports `program::VertexShader`, `program::FragmentShader`
[INFO] [stdout]   --> src/lib.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use program::{VertexShader, FragmentShader, Shader, Program};
[INFO] [stdout]    |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^ no `FragmentShader` in `program`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   no `VertexShader` in `program`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::VertexShader
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::FragmentShader
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `buffer::StaticDraw`
[INFO] [stdout]   --> src/lib.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub use buffer::{Vbo, Ebo, StaticDraw};
[INFO] [stdout]    |                            ^^^^^^^^^^ no `StaticDraw` in `buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            buffer::BufferUsage::StaticDraw
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `program::VertexShader`, `program::FragmentShader`
[INFO] [stdout]   --> src/lib.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use program::{VertexShader, FragmentShader, Shader, Program};
[INFO] [stdout]    |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^ no `FragmentShader` in `program`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   no `VertexShader` in `program`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::VertexShader
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::FragmentShader
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `buffer::StaticDraw`
[INFO] [stdout]   --> src/lib.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub use buffer::{Vbo, Ebo, StaticDraw};
[INFO] [stdout]    |                            ^^^^^^^^^^ no `StaticDraw` in `buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            buffer::BufferUsage::StaticDraw
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `std::io::File`, `std::io::IoResult`
[INFO] [stdout]  --> src/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{File, IoResult};
[INFO] [stdout]   |               ^^^^  ^^^^^^^^
[INFO] [stdout]   |               |     |
[INFO] [stdout]   |               |     no `IoResult` in `io`
[INFO] [stdout]   |               |     help: a similar name exists in the module: `Result`
[INFO] [stdout]   |               no `File` in `io`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           std::fs::File
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `std::io::File`, `std::io::IoResult`
[INFO] [stdout]  --> src/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{File, IoResult};
[INFO] [stdout]   |               ^^^^  ^^^^^^^^
[INFO] [stdout]   |               |     |
[INFO] [stdout]   |               |     no `IoResult` in `io`
[INFO] [stdout]   |               |     help: a similar name exists in the module: `Result`
[INFO] [stdout]   |               no `File` in `io`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           std::fs::File
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `license` in this scope
[INFO] [stdout]  --> src/lib.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![license = "ASL2/MIT"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `comment` in this scope
[INFO] [stdout]  --> src/lib.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![comment = "Helper utilities for working with OpenGL"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `license` in this scope
[INFO] [stdout]  --> src/lib.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![license = "ASL2/MIT"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `fail` in this scope
[INFO] [stdout]   --> src/program.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 fail!("name is not a shader!");
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `comment` in this scope
[INFO] [stdout]  --> src/lib.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![comment = "Helper utilities for working with OpenGL"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `fail` in this scope
[INFO] [stdout]   --> src/program.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 fail!("name is not a shader!");
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut s = Vec::with_capacity(len as uint - 1);
[INFO] [stdout]    |                                           ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:53:26
[INFO] [stdout]    |
[INFO] [stdout] 53 |         s.set_len(len as uint - 1);
[INFO] [stdout]    |                          ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Path`
[INFO] [stdout]   --> src/program.rs:98:27
[INFO] [stdout]    |
[INFO] [stdout] 98 |         match File::open(&Path::new(p)).read_to_string() {
[INFO] [stdout]    |                           ^^^^ use of undeclared type `Path`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::path::Path;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `DynamicDraw` in this scope
[INFO] [stdout]   --> src/buffer.rs:84:32
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ebo.load_data(indices, DynamicDraw);
[INFO] [stdout]    |                                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unit variant
[INFO] [stdout]    |
[INFO] [stdout] 1  + use buffer::BufferUsage::DynamicDraw;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:37:62
[INFO] [stdout]    |
[INFO] [stdout] 37 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:51:62
[INFO] [stdout]    |
[INFO] [stdout] 51 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:65:62
[INFO] [stdout]    |
[INFO] [stdout] 65 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:106:28
[INFO] [stdout]     |
[INFO] [stdout] 106 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 106 -             format: pixel::RGBA,
[INFO] [stdout] 106 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:107:27
[INFO] [stdout]     |
[INFO] [stdout] 107 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 107 -             ptype: pixel::FLOAT,
[INFO] [stdout] 107 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 182 -             format: pixel::RGBA,
[INFO] [stdout] 182 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:183:27
[INFO] [stdout]     |
[INFO] [stdout] 183 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 183 -             ptype: pixel::FLOAT,
[INFO] [stdout] 183 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut s = Vec::with_capacity(len as uint - 1);
[INFO] [stdout]    |                                           ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:53:26
[INFO] [stdout]    |
[INFO] [stdout] 53 |         s.set_len(len as uint - 1);
[INFO] [stdout]    |                          ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Path`
[INFO] [stdout]   --> src/program.rs:98:27
[INFO] [stdout]    |
[INFO] [stdout] 98 |         match File::open(&Path::new(p)).read_to_string() {
[INFO] [stdout]    |                           ^^^^ use of undeclared type `Path`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::path::Path;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `DynamicDraw` in this scope
[INFO] [stdout]   --> src/buffer.rs:84:32
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ebo.load_data(indices, DynamicDraw);
[INFO] [stdout]    |                                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unit variant
[INFO] [stdout]    |
[INFO] [stdout] 1  + use buffer::BufferUsage::DynamicDraw;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:37:62
[INFO] [stdout]    |
[INFO] [stdout] 37 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:51:62
[INFO] [stdout]    |
[INFO] [stdout] 51 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:65:62
[INFO] [stdout]    |
[INFO] [stdout] 65 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unknown lint: `unused_attribute`
[INFO] [stdout]  --> src/lib.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #![allow(unused_attribute)]
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^ help: did you mean: `unused_attributes`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(unknown_lints)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:106:28
[INFO] [stdout]     |
[INFO] [stdout] 106 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 106 -             format: pixel::RGBA,
[INFO] [stdout] 106 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:107:27
[INFO] [stdout]     |
[INFO] [stdout] 107 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 107 -             ptype: pixel::FLOAT,
[INFO] [stdout] 107 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 182 -             format: pixel::RGBA,
[INFO] [stdout] 182 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:183:27
[INFO] [stdout]     |
[INFO] [stdout] 183 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 183 -             ptype: pixel::FLOAT,
[INFO] [stdout] 183 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unknown lint: `unused_attribute`
[INFO] [stdout]  --> src/lib.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #![allow(unused_attribute)]
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^ help: did you mean: `unused_attributes`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(unknown_lints)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]   --> src/lib.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | extern crate libc;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]    = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]    = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/buffer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/vao.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]   --> src/lib.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | extern crate libc;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]    = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]    = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/buffer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/vao.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:142:14
[INFO] [stdout]     |
[INFO] [stdout] 142 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:142:14
[INFO] [stdout]     |
[INFO] [stdout] 142 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:148:14
[INFO] [stdout]     |
[INFO] [stdout] 148 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:148:14
[INFO] [stdout]     |
[INFO] [stdout] 148 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:78:14
[INFO] [stdout]    |
[INFO] [stdout] 78 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `VertexShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FragmentShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ matches any value
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unreachable_patterns)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `VertexShader`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unused_variables)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FragmentShader`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/program.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ data moved here
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 16 -         match *self {
[INFO] [stdout] 16 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let shader = gl::CreateShader(gltype);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CompileShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         gl::CompileShader(shader);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:78:14
[INFO] [stdout]    |
[INFO] [stdout] 78 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         gl::DeleteShader(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:119:23
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let program = gl::CreateProgram();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `AttachShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:124:21
[INFO] [stdout]     |
[INFO] [stdout] 124 |                     gl::AttachShader(program, shader.name);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `LinkProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         gl::LinkProgram(program);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `UseProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         gl::UseProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |         gl::DeleteProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StaticDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `DynamicDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StreamDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StaticDraw`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `DynamicDraw`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StreamDraw`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `VertexShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/buffer.rs:30:15
[INFO] [stdout]    |
[INFO] [stdout] 30 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- data moved here
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ---------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 30 -         match *self {
[INFO] [stdout] 30 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |         gl::BindBuffer(gl::ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FragmentShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         gl::BindBuffer(gl::ELEMENT_ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SamplesPassed` is named the same as one of the variants of the type `query::QueryTarget`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `query::QueryTarget::SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SamplesPassed`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ matches any value
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unreachable_patterns)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/query.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             -------------
[INFO] [stdout]    |             |
[INFO] [stdout]    |             data moved here
[INFO] [stdout]    |             move occurs because `SamplesPassed` has type `QueryTarget`, which does not implement the `Copy` trait
[INFO] [stdout]    |
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 10 -         match *self {
[INFO] [stdout] 10 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BeginQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         gl::BeginQuery(self.target, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `EndQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         gl::EndQuery(self.target);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `VertexShader`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unused_variables)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FragmentShader`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/program.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ data moved here
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 16 -         match *self {
[INFO] [stdout] 16 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindVertexArray` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         gl::BindVertexArray(self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DrawArrays` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |         gl::DrawArrays(primitive.to_glenum(), first, count);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RED` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RG` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let shader = gl::CreateShader(gltype);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGB` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGR` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGBA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGRA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CompileShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         gl::CompileShader(shader);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         gl::DeleteShader(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RED`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RG`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGB`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGR`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGBA`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGRA`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- data moved here
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             -- ...and here
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 19 -         match *self {
[INFO] [stdout] 19 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:119:23
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let program = gl::CreateProgram();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `AttachShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:124:21
[INFO] [stdout]     |
[INFO] [stdout] 124 |                     gl::AttachShader(program, shader.name);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `LinkProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         gl::LinkProgram(program);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FLOAT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_3_3_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_2_3_3_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `UseProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         gl::UseProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |         gl::DeleteProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_5_5_1` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StaticDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_1_5_5_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `DynamicDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_10_10_10_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StreamDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_2_10_10_10_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StaticDraw`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `DynamicDraw`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StreamDraw`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/buffer.rs:30:15
[INFO] [stdout]    |
[INFO] [stdout] 30 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- data moved here
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ---------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 30 -         match *self {
[INFO] [stdout] 30 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |         gl::BindBuffer(gl::ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         gl::BindBuffer(gl::ELEMENT_ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BYTE`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SamplesPassed` is named the same as one of the variants of the type `query::QueryTarget`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `query::QueryTarget::SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SHORT`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `INT`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FLOAT`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_3_3_2`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SamplesPassed`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_10_10_10_2`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/query.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             -------------
[INFO] [stdout]    |             |
[INFO] [stdout]    |             data moved here
[INFO] [stdout]    |             move occurs because `SamplesPassed` has type `QueryTarget`, which does not implement the `Copy` trait
[INFO] [stdout]    |
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 10 -         match *self {
[INFO] [stdout] 10 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BeginQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         gl::BeginQuery(self.target, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `EndQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         gl::EndQuery(self.target);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindVertexArray` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         gl::BindVertexArray(self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DrawArrays` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |         gl::DrawArrays(primitive.to_glenum(), first, count);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RED` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RG` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGB` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGR` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGBA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGRA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:54:15
[INFO] [stdout]    |
[INFO] [stdout] 54 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- data moved here
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ------------ ...and here
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             --------------------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 54 -         match *self {
[INFO] [stdout] 54 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture3D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RED`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RG`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGB`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGR`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGBA`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGRA`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- data moved here
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             -- ...and here
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 19 -         match *self {
[INFO] [stdout] 19 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureRectangle` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureCubeMap` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureBuffer` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FLOAT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_3_3_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_2_3_3_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1D`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2D`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture3D`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_5_5_1` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_1_5_5_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1DArray`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2DArray`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureRectangle`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_10_10_10_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureCubeMap`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureBuffer`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_2_10_10_10_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- data moved here
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ---------------- ...and here
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 22 -         match *self {
[INFO] [stdout] 22 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToEdge` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToBorder` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Repeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `MirroredRepeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToEdge`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToBorder`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Repeat`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `MirroredRepeat`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- data moved here
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 44 -         match *self {
[INFO] [stdout] 44 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BYTE`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Nearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SHORT`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Linear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `INT`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FLOAT`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_3_3_2`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Nearest`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Linear`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_10_10_10_2`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:64:15
[INFO] [stdout]    |
[INFO] [stdout] 64 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- data moved here
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------ ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 64 -         match *self {
[INFO] [stdout] 64 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 261 |         gl::BindTexture(self.target, self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:266:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_s` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:270:29
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn wrap_s(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:267:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 267 |         self.wrap_r(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_t` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:275:29
[INFO] [stdout]     |
[INFO] [stdout] 275 |     pub fn wrap_t(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:54:15
[INFO] [stdout]    |
[INFO] [stdout] 54 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- data moved here
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ------------ ...and here
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             --------------------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 54 -         match *self {
[INFO] [stdout] 54 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_S, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:277:9
[INFO] [stdout]     |
[INFO] [stdout] 277 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_T, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_R, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture3D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `fm`
[INFO] [stdout]    --> src/texture.rs:294:25
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |                          -- move occurs because `fm` has type `FilterMethod`, which does not implement the `Copy` trait
[INFO] [stdout] 293 |         self.min_filter(fm);
[INFO] [stdout]     |                         -- value moved here
[INFO] [stdout] 294 |         self.mag_filter(fm);
[INFO] [stdout]     |                         ^^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `min_filter` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:297:34
[INFO] [stdout]     |
[INFO] [stdout] 297 |     pub fn min_filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |            ----------            ^^^^^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `FilterMethod` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub enum FilterMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 |         gl::TexParameteri(self.target, gl::TEXTURE_MIN_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureRectangle` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 304 |         gl::TexParameteri(self.target, gl::TEXTURE_MAG_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureCubeMap` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `GenerateMipmap` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         gl::GenerateMipmap(self.target);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureBuffer` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1D`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2D`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture3D`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1DArray`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2DArray`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureRectangle`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureCubeMap`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureBuffer`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- data moved here
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ---------------- ...and here
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 22 -         match *self {
[INFO] [stdout] 22 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToEdge` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToBorder` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Repeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `MirroredRepeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToEdge`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToBorder`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Repeat`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `MirroredRepeat`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- data moved here
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 44 -         match *self {
[INFO] [stdout] 44 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Nearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Linear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `ActiveTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         gl::ActiveTexture(gl::TEXTURE0 + num);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `PrimitiveRestartIndex` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/lib.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     gl::PrimitiveRestartIndex(index);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Points` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `Primitive::Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Lines` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `Primitive::Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineLoop` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Triangles` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleFan` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Nearest`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Linear`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Points`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Lines`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineStrip`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:64:15
[INFO] [stdout]    |
[INFO] [stdout] 64 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- data moved here
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------ ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 64 -         match *self {
[INFO] [stdout] 64 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineLoop`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Triangles`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleStrip`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleFan`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/lib.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ data moved here
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             -------- ...and here
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 59 -         match *self {
[INFO] [stdout] 59 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 261 |         gl::BindTexture(self.target, self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:266:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_s` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:270:29
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn wrap_s(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:267:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 267 |         self.wrap_r(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_t` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:275:29
[INFO] [stdout]     |
[INFO] [stdout] 275 |     pub fn wrap_t(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_S, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:277:9
[INFO] [stdout]     |
[INFO] [stdout] 277 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_T, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_R, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `fm`
[INFO] [stdout]    --> src/texture.rs:294:25
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |                          -- move occurs because `fm` has type `FilterMethod`, which does not implement the `Copy` trait
[INFO] [stdout] 293 |         self.min_filter(fm);
[INFO] [stdout]     |                         -- value moved here
[INFO] [stdout] 294 |         self.mag_filter(fm);
[INFO] [stdout]     |                         ^^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `min_filter` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:297:34
[INFO] [stdout]     |
[INFO] [stdout] 297 |     pub fn min_filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |            ----------            ^^^^^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `FilterMethod` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub enum FilterMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 |         gl::TexParameteri(self.target, gl::TEXTURE_MIN_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 304 |         gl::TexParameteri(self.target, gl::TEXTURE_MAG_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `GenerateMipmap` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         gl::GenerateMipmap(self.target);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 221 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0133, E0170, E0382, E0412, E0425, E0432, E0433, E0507, E0599...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `ActiveTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         gl::ActiveTexture(gl::TEXTURE0 + num);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `PrimitiveRestartIndex` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/lib.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     gl::PrimitiveRestartIndex(index);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Points` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `Primitive::Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Lines` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `Primitive::Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineLoop` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Triangles` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleFan` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Points`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Lines`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineStrip`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineLoop`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Triangles`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleStrip`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleFan`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/lib.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ data moved here
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             -------- ...and here
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 59 -         match *self {
[INFO] [stdout] 59 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 221 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0133, E0170, E0382, E0412, E0425, E0432, E0433, E0507, E0599...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hgl` (lib) due to 222 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `hgl` (lib test) due to 222 previous errors
[INFO] running `Command { std: "docker" "inspect" "5b79045408c28cc4f3d43e3edabfb3308c3a45ca7016f2d6f8e1e270b85648e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5b79045408c28cc4f3d43e3edabfb3308c3a45ca7016f2d6f8e1e270b85648e4", kill_on_drop: false }`
[INFO] [stdout] 5b79045408c28cc4f3d43e3edabfb3308c3a45ca7016f2d6f8e1e270b85648e4
[INFO] checking hgl-0.0.1 against try#9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88 for pr-124157
[INFO] extracting crate hgl 0.0.1 into /workspace/builds/worker-7-tc2/source
[INFO] validating manifest of crates.io crate hgl 0.0.1 on toolchain 9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate hgl 0.0.1
[INFO] finished tweaking crates.io crate hgl 0.0.1
[INFO] tweaked toml for crates.io crate hgl 0.0.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate crates.io crate hgl 0.0.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 227d33c434faf7e346362f9e20a31574e4c2822308aab0d3e66bb9813c249229
[INFO] running `Command { std: "docker" "start" "-a" "227d33c434faf7e346362f9e20a31574e4c2822308aab0d3e66bb9813c249229", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "227d33c434faf7e346362f9e20a31574e4c2822308aab0d3e66bb9813c249229", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "227d33c434faf7e346362f9e20a31574e4c2822308aab0d3e66bb9813c249229", kill_on_drop: false }`
[INFO] [stdout] 227d33c434faf7e346362f9e20a31574e4c2822308aab0d3e66bb9813c249229
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 928403446de9613e5f75720cc81292b9b05ad15607b14d407258fac0f63c661b
[INFO] running `Command { std: "docker" "start" "-a" "928403446de9613e5f75720cc81292b9b05ad15607b14d407258fac0f63c661b", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.7
[INFO] [stderr]    Compiling cfg-if v0.1.9
[INFO] [stderr]    Compiling cc v1.0.37
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling libc v0.2.60
[INFO] [stderr]     Checking nom v1.2.4
[INFO] [stderr]     Checking semver v0.2.3
[INFO] [stderr]    Compiling cmake v0.1.40
[INFO] [stderr]    Compiling gl_generator v0.13.0
[INFO] [stderr]    Compiling glfw-sys v3.3.0
[INFO] [stderr]    Compiling gl v0.13.0
[INFO] [stderr]     Checking glfw v0.29.0
[INFO] [stderr]     Checking hgl v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved imports `program::VertexShader`, `program::FragmentShader`
[INFO] [stdout]   --> src/lib.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use program::{VertexShader, FragmentShader, Shader, Program};
[INFO] [stdout]    |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^ no `FragmentShader` in `program`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   no `VertexShader` in `program`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::VertexShader
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::FragmentShader
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `program::VertexShader`, `program::FragmentShader`
[INFO] [stdout]   --> src/lib.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub use program::{VertexShader, FragmentShader, Shader, Program};
[INFO] [stdout]    |                   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^ no `FragmentShader` in `program`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   no `VertexShader` in `program`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::VertexShader
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            program::ShaderType::FragmentShader
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `buffer::StaticDraw`
[INFO] [stdout]   --> src/lib.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub use buffer::{Vbo, Ebo, StaticDraw};
[INFO] [stdout]    |                            ^^^^^^^^^^ no `StaticDraw` in `buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            buffer::BufferUsage::StaticDraw
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `buffer::StaticDraw`
[INFO] [stdout]   --> src/lib.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub use buffer::{Vbo, Ebo, StaticDraw};
[INFO] [stdout]    |                            ^^^^^^^^^^ no `StaticDraw` in `buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this variant instead:
[INFO] [stdout]            buffer::BufferUsage::StaticDraw
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `std::io::File`, `std::io::IoResult`
[INFO] [stdout]  --> src/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{File, IoResult};
[INFO] [stdout]   |               ^^^^  ^^^^^^^^
[INFO] [stdout]   |               |     |
[INFO] [stdout]   |               |     no `IoResult` in `io`
[INFO] [stdout]   |               |     help: a similar name exists in the module: `Result`
[INFO] [stdout]   |               no `File` in `io`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           std::fs::File
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `std::io::File`, `std::io::IoResult`
[INFO] [stdout]  --> src/program.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{File, IoResult};
[INFO] [stdout]   |               ^^^^  ^^^^^^^^
[INFO] [stdout]   |               |     |
[INFO] [stdout]   |               |     no `IoResult` in `io`
[INFO] [stdout]   |               |     help: a similar name exists in the module: `Result`
[INFO] [stdout]   |               no `File` in `io`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           std::fs::File
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `license` in this scope
[INFO] [stdout]  --> src/lib.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![license = "ASL2/MIT"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `comment` in this scope
[INFO] [stdout]  --> src/lib.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![comment = "Helper utilities for working with OpenGL"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `license` in this scope
[INFO] [stdout]  --> src/lib.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | #![license = "ASL2/MIT"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `fail` in this scope
[INFO] [stdout]   --> src/program.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 fail!("name is not a shader!");
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `comment` in this scope
[INFO] [stdout]  --> src/lib.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | #![comment = "Helper utilities for working with OpenGL"]
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `fail` in this scope
[INFO] [stdout]   --> src/program.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 fail!("name is not a shader!");
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut s = Vec::with_capacity(len as uint - 1);
[INFO] [stdout]    |                                           ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:53:26
[INFO] [stdout]    |
[INFO] [stdout] 53 |         s.set_len(len as uint - 1);
[INFO] [stdout]    |                          ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Path`
[INFO] [stdout]   --> src/program.rs:98:27
[INFO] [stdout]    |
[INFO] [stdout] 98 |         match File::open(&Path::new(p)).read_to_string() {
[INFO] [stdout]    |                           ^^^^ use of undeclared type `Path`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::path::Path;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `DynamicDraw` in this scope
[INFO] [stdout]   --> src/buffer.rs:84:32
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ebo.load_data(indices, DynamicDraw);
[INFO] [stdout]    |                                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unit variant
[INFO] [stdout]    |
[INFO] [stdout] 1  + use buffer::BufferUsage::DynamicDraw;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:37:62
[INFO] [stdout]    |
[INFO] [stdout] 37 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:51:62
[INFO] [stdout]    |
[INFO] [stdout] 51 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:65:62
[INFO] [stdout]    |
[INFO] [stdout] 65 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:106:28
[INFO] [stdout]     |
[INFO] [stdout] 106 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 106 -             format: pixel::RGBA,
[INFO] [stdout] 106 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:107:27
[INFO] [stdout]     |
[INFO] [stdout] 107 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 107 -             ptype: pixel::FLOAT,
[INFO] [stdout] 107 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 182 -             format: pixel::RGBA,
[INFO] [stdout] 182 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:183:27
[INFO] [stdout]     |
[INFO] [stdout] 183 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 183 -             ptype: pixel::FLOAT,
[INFO] [stdout] 183 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:49:43
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let mut s = Vec::with_capacity(len as uint - 1);
[INFO] [stdout]    |                                           ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/program.rs:53:26
[INFO] [stdout]    |
[INFO] [stdout] 53 |         s.set_len(len as uint - 1);
[INFO] [stdout]    |                          ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Path`
[INFO] [stdout]   --> src/program.rs:98:27
[INFO] [stdout]    |
[INFO] [stdout] 98 |         match File::open(&Path::new(p)).read_to_string() {
[INFO] [stdout]    |                           ^^^^ use of undeclared type `Path`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::path::Path;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `DynamicDraw` in this scope
[INFO] [stdout]   --> src/buffer.rs:84:32
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ebo.load_data(indices, DynamicDraw);
[INFO] [stdout]    |                                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this unit variant
[INFO] [stdout]    |
[INFO] [stdout] 1  + use buffer::BufferUsage::DynamicDraw;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unknown lint: `unused_attribute`
[INFO] [stdout]  --> src/lib.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #![allow(unused_attribute)]
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^ help: did you mean: `unused_attributes`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(unknown_lints)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:37:62
[INFO] [stdout]    |
[INFO] [stdout] 37 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:51:62
[INFO] [stdout]    |
[INFO] [stdout] 51 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `uint` in this scope
[INFO] [stdout]   --> src/vao.rs:65:62
[INFO] [stdout]    |
[INFO] [stdout] 65 |                          elts: GLint, stride: GLint, offset: uint) {
[INFO] [stdout]    |                                                              ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:106:28
[INFO] [stdout]     |
[INFO] [stdout] 106 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 106 -             format: pixel::RGBA,
[INFO] [stdout] 106 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:107:27
[INFO] [stdout]     |
[INFO] [stdout] 107 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 107 -             ptype: pixel::FLOAT,
[INFO] [stdout] 107 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `RGBA` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:182:28
[INFO] [stdout]     |
[INFO] [stdout] 182 |             format: pixel::RGBA,
[INFO] [stdout]     |                            ^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelFormat::RGBA;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `RGBA`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 182 -             format: pixel::RGBA,
[INFO] [stdout] 182 +             format: RGBA,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `FLOAT` in module `pixel`
[INFO] [stdout]    --> src/texture.rs:183:27
[INFO] [stdout]     |
[INFO] [stdout] 183 |             ptype: pixel::FLOAT,
[INFO] [stdout]     |                           ^^^^^ not found in `pixel`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   + use gl::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] 1   + use texture::pixel::PixelType::FLOAT;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `FLOAT`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 183 -             ptype: pixel::FLOAT,
[INFO] [stdout] 183 +             ptype: FLOAT,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unknown lint: `unused_attribute`
[INFO] [stdout]  --> src/lib.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #![allow(unused_attribute)]
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^ help: did you mean: `unused_attributes`
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[deny(unknown_lints)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]   --> src/lib.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | extern crate libc;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]    = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]    = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]   --> src/lib.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | extern crate libc;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]    = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]    = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/buffer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/buffer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/vao.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
[INFO] [stdout]  --> src/vao.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use libc::c_void;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #27812 <https://github.com/rust-lang/rust/issues/27812> for more information
[INFO] [stdout]   = help: add `#![feature(rustc_private)]` to the crate attributes to enable
[INFO] [stdout]   = note: this compiler was built on 2024-04-23; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:142:14
[INFO] [stdout]     |
[INFO] [stdout] 142 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:142:14
[INFO] [stdout]     |
[INFO] [stdout] 142 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:148:14
[INFO] [stdout]     |
[INFO] [stdout] 148 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/program.rs:148:14
[INFO] [stdout]     |
[INFO] [stdout] 148 |         name.with_c_str(|cstr| unsafe {
[INFO] [stdout]     |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:53:14
[INFO] [stdout]    |
[INFO] [stdout] 53 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:78:14
[INFO] [stdout]    |
[INFO] [stdout] 78 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `VertexShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FragmentShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ matches any value
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unreachable_patterns)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `VertexShader`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unused_variables)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FragmentShader`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/program.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ data moved here
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 16 -         match *self {
[INFO] [stdout] 16 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `with_c_str` found for reference `&str` in the current scope
[INFO] [stdout]   --> src/vao.rs:78:14
[INFO] [stdout]    |
[INFO] [stdout] 78 |         name.with_c_str(|cstr| {
[INFO] [stdout]    |         -----^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let shader = gl::CreateShader(gltype);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CompileShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         gl::CompileShader(shader);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         gl::DeleteShader(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:119:23
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let program = gl::CreateProgram();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `AttachShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:124:21
[INFO] [stdout]     |
[INFO] [stdout] 124 |                     gl::AttachShader(program, shader.name);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `LinkProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         gl::LinkProgram(program);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `VertexShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(bindings_with_variant_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FragmentShader` is named the same as one of the variants of the type `program::ShaderType`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `program::ShaderType::FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ matches any value
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unreachable_patterns)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `VertexShader`
[INFO] [stdout]   --> src/program.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_VertexShader`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(unused_variables)]` implied by `#[deny(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FragmentShader`
[INFO] [stdout]   --> src/program.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_FragmentShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `UseProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         gl::UseProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |         gl::DeleteProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/program.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 17 |             VertexShader => gl::VERTEX_SHADER,
[INFO] [stdout]    |             ------------ data moved here
[INFO] [stdout] 18 |             FragmentShader => gl::FRAGMENT_SHADER,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 16 -         match *self {
[INFO] [stdout] 16 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StaticDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `DynamicDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StreamDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StaticDraw`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `DynamicDraw`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StreamDraw`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/buffer.rs:30:15
[INFO] [stdout]    |
[INFO] [stdout] 30 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- data moved here
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ---------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 30 -         match *self {
[INFO] [stdout] 30 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |         gl::BindBuffer(gl::ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         gl::BindBuffer(gl::ELEMENT_ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:83:22
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let shader = gl::CreateShader(gltype);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SamplesPassed` is named the same as one of the variants of the type `query::QueryTarget`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `query::QueryTarget::SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CompileShader` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/program.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |         gl::CompileShader(shader);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SamplesPassed`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/query.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             -------------
[INFO] [stdout]    |             |
[INFO] [stdout]    |             data moved here
[INFO] [stdout]    |             move occurs because `SamplesPassed` has type `QueryTarget`, which does not implement the `Copy` trait
[INFO] [stdout]    |
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 10 -         match *self {
[INFO] [stdout] 10 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BeginQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         gl::BeginQuery(self.target, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         gl::DeleteShader(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `EndQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         gl::EndQuery(self.target);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindVertexArray` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         gl::BindVertexArray(self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `CreateProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:119:23
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let program = gl::CreateProgram();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DrawArrays` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |         gl::DrawArrays(primitive.to_glenum(), first, count);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `AttachShader` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:124:21
[INFO] [stdout]     |
[INFO] [stdout] 124 |                     gl::AttachShader(program, shader.name);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `LinkProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         gl::LinkProgram(program);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RED` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RG` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGB` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGR` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGBA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGRA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `UseProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         gl::UseProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DeleteProgram` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/program.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |         gl::DeleteProgram(self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StaticDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RED`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `DynamicDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RG`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `StreamDraw` is named the same as one of the variants of the type `buffer::BufferUsage`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: to match on the variant, qualify the path: `buffer::BufferUsage::StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- matches any value
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StaticDraw`
[INFO] [stdout]   --> src/buffer.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StaticDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `DynamicDraw`
[INFO] [stdout]   --> src/buffer.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_DynamicDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `StreamDraw`
[INFO] [stdout]   --> src/buffer.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_StreamDraw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGB`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/buffer.rs:30:15
[INFO] [stdout]    |
[INFO] [stdout] 30 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 31 |             StaticDraw  => gl::STATIC_DRAW,
[INFO] [stdout]    |             ---------- data moved here
[INFO] [stdout] 32 |             DynamicDraw => gl::DYNAMIC_DRAW,
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout] 33 |             StreamDraw  => gl::STREAM_DRAW,
[INFO] [stdout]    |             ---------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 30 -         match *self {
[INFO] [stdout] 30 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGR`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |         gl::BindBuffer(gl::ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGBA`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindBuffer` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/buffer.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         gl::BindBuffer(gl::ELEMENT_ARRAY_BUFFER, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SamplesPassed` is named the same as one of the variants of the type `query::QueryTarget`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `query::QueryTarget::SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SamplesPassed`
[INFO] [stdout]   --> src/query.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_SamplesPassed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGRA`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/query.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 11 |             SamplesPassed => gl::SAMPLES_PASSED,
[INFO] [stdout]    |             -------------
[INFO] [stdout]    |             |
[INFO] [stdout]    |             data moved here
[INFO] [stdout]    |             move occurs because `SamplesPassed` has type `QueryTarget`, which does not implement the `Copy` trait
[INFO] [stdout]    |
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 10 -         match *self {
[INFO] [stdout] 10 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- data moved here
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             -- ...and here
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 19 -         match *self {
[INFO] [stdout] 19 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BeginQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         gl::BeginQuery(self.target, self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `EndQuery` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/query.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         gl::EndQuery(self.target);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FLOAT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_3_3_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindVertexArray` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         gl::BindVertexArray(self.name);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_2_3_3_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_5_5_1` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_1_5_5_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_10_10_10_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_2_10_10_10_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `DrawArrays` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/vao.rs:87:9
[INFO] [stdout]    |
[INFO] [stdout] 87 |         gl::DrawArrays(primitive.to_glenum(), first, count);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RED` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RG` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGB` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGR` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `RGBA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BGRA` is named the same as one of the variants of the type `texture::pixel::PixelFormat`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelFormat::BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RED`
[INFO] [stdout]   --> src/pixel.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RG`
[INFO] [stdout]   --> src/pixel.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_RG`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGB`
[INFO] [stdout]   --> src/pixel.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_RGB`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGR`
[INFO] [stdout]   --> src/pixel.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_BGR`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BYTE`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `RGBA`
[INFO] [stdout]   --> src/pixel.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_RGBA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BGRA`
[INFO] [stdout]   --> src/pixel.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BGRA`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SHORT`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `INT`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 20 |             RED => gl::RED,
[INFO] [stdout]    |             --- data moved here
[INFO] [stdout] 21 |             RG => gl::RG,
[INFO] [stdout]    |             -- ...and here
[INFO] [stdout] 22 |             RGB => gl::RGB,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 23 |             BGR => gl::BGR,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 24 |             RGBA => gl::RGBA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 25 |             BGRA => gl::BGRA,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 19 -         match *self {
[INFO] [stdout] 19 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FLOAT`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_3_3_2`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `BYTE` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `SHORT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `INT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `FLOAT` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_3_3_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_10_10_10_2`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_BYTE_2_3_3_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_6_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_4_4_4_4_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_5_5_5_1` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_SHORT_1_5_5_5_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:54:15
[INFO] [stdout]    |
[INFO] [stdout] 54 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- data moved here
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ------------ ...and here
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             --------------------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 54 -         match *self {
[INFO] [stdout] 54 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_8_8_8_8_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_10_10_10_2` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture3D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `UNSIGNED_INT_2_10_10_10_REV` is named the same as one of the variants of the type `texture::pixel::PixelType`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::pixel::PixelType::UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureRectangle` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureCubeMap` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureBuffer` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1D`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2D`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture3D`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1DArray`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2DArray`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureRectangle`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureCubeMap`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE`
[INFO] [stdout]   --> src/pixel.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureBuffer`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `BYTE`
[INFO] [stdout]   --> src/pixel.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_BYTE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT`
[INFO] [stdout]   --> src/pixel.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `SHORT`
[INFO] [stdout]   --> src/pixel.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_SHORT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- data moved here
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ---------------- ...and here
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 22 -         match *self {
[INFO] [stdout] 22 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT`
[INFO] [stdout]   --> src/pixel.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToEdge` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `INT`
[INFO] [stdout]   --> src/pixel.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_INT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToBorder` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `FLOAT`
[INFO] [stdout]   --> src/pixel.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_FLOAT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Repeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_3_3_2`
[INFO] [stdout]   --> src/pixel.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_3_3_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `MirroredRepeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout]   --> src/pixel.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_BYTE_2_3_3_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5`
[INFO] [stdout]   --> src/pixel.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout]   --> src/pixel.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_6_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToEdge`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout]   --> src/pixel.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToBorder`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout]   --> src/pixel.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_4_4_4_4_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Repeat`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout]   --> src/pixel.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_5_5_5_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout]   --> src/pixel.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_SHORT_1_5_5_5_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8`
[INFO] [stdout]   --> src/pixel.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `MirroredRepeat`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout]   --> src/pixel.rs:71:13
[INFO] [stdout]    |
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_8_8_8_8_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- data moved here
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 44 -         match *self {
[INFO] [stdout] 44 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_10_10_10_2`
[INFO] [stdout]   --> src/pixel.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_10_10_10_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout]   --> src/pixel.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_UNSIGNED_INT_2_10_10_10_REV`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Nearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Linear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/pixel.rs:54:15
[INFO] [stdout]    |
[INFO] [stdout] 54 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 55 |             UNSIGNED_BYTE               => gl::UNSIGNED_BYTE,
[INFO] [stdout]    |             ------------- data moved here
[INFO] [stdout] 56 |             BYTE                        => gl::BYTE,
[INFO] [stdout]    |             ---- ...and here
[INFO] [stdout] 57 |             UNSIGNED_SHORT              => gl::UNSIGNED_SHORT,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 58 |             SHORT                       => gl::SHORT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 59 |             UNSIGNED_INT                => gl::UNSIGNED_INT,
[INFO] [stdout]    |             ------------ ...and here
[INFO] [stdout] 60 |             INT                         => gl::INT,
[INFO] [stdout]    |             --- ...and here
[INFO] [stdout] 61 |             FLOAT                       => gl::FLOAT,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             UNSIGNED_BYTE_3_3_2         => gl::UNSIGNED_BYTE_3_3_2,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 63 |             UNSIGNED_BYTE_2_3_3_REV     => gl::UNSIGNED_BYTE_2_3_3_REV,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 64 |             UNSIGNED_SHORT_5_6_5        => gl::UNSIGNED_SHORT_5_6_5,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 65 |             UNSIGNED_SHORT_5_6_5_REV    => gl::UNSIGNED_SHORT_5_6_5_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 66 |             UNSIGNED_SHORT_4_4_4_4      => gl::UNSIGNED_SHORT_4_4_4_4,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 67 |             UNSIGNED_SHORT_4_4_4_4_REV  => gl::UNSIGNED_SHORT_4_4_4_4_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 68 |             UNSIGNED_SHORT_5_5_5_1      => gl::UNSIGNED_SHORT_5_5_5_1,
[INFO] [stdout]    |             ---------------------- ...and here
[INFO] [stdout] 69 |             UNSIGNED_SHORT_1_5_5_5_REV  => gl::UNSIGNED_SHORT_1_5_5_5_REV,
[INFO] [stdout]    |             -------------------------- ...and here
[INFO] [stdout] 70 |             UNSIGNED_INT_8_8_8_8        => gl::UNSIGNED_INT_8_8_8_8,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 71 |             UNSIGNED_INT_8_8_8_8_REV    => gl::UNSIGNED_INT_8_8_8_8_REV,
[INFO] [stdout]    |             ------------------------ ...and here
[INFO] [stdout] 72 |             UNSIGNED_INT_10_10_10_2     => gl::UNSIGNED_INT_10_10_10_2,
[INFO] [stdout]    |             ----------------------- ...and here
[INFO] [stdout] 73 |             UNSIGNED_INT_2_10_10_10_REV => gl::UNSIGNED_INT_2_10_10_10_REV,
[INFO] [stdout]    |             --------------------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 54 -         match *self {
[INFO] [stdout] 54 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture3D` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Nearest`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture1DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Linear`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Texture2DArray` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureRectangle` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureCubeMap` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TextureBuffer` is named the same as one of the variants of the type `texture::TextureTarget`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::TextureTarget::TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:64:15
[INFO] [stdout]    |
[INFO] [stdout] 64 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- data moved here
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------ ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 64 -         match *self {
[INFO] [stdout] 64 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1D`
[INFO] [stdout]   --> src/texture.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2D`
[INFO] [stdout]   --> src/texture.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture3D`
[INFO] [stdout]   --> src/texture.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture3D`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture1DArray`
[INFO] [stdout]   --> src/texture.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture1DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Texture2DArray`
[INFO] [stdout]   --> src/texture.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Texture2DArray`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureRectangle`
[INFO] [stdout]   --> src/texture.rs:28:13
[INFO] [stdout]    |
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureRectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureCubeMap`
[INFO] [stdout]   --> src/texture.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureCubeMap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TextureBuffer`
[INFO] [stdout]   --> src/texture.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TextureBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 23 |             Texture1D => gl::TEXTURE_1D,
[INFO] [stdout]    |             --------- data moved here
[INFO] [stdout] 24 |             Texture2D => gl::TEXTURE_2D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 25 |             Texture3D => gl::TEXTURE_3D,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 26 |             Texture1DArray => gl::TEXTURE_1D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 27 |             Texture2DArray => gl::TEXTURE_2D_ARRAY,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 28 |             TextureRectangle => gl::TEXTURE_RECTANGLE,
[INFO] [stdout]    |             ---------------- ...and here
[INFO] [stdout] 29 |             TextureCubeMap => gl::TEXTURE_CUBE_MAP,
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout] 30 |             TextureBuffer => gl::TEXTURE_BUFFER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 22 -         match *self {
[INFO] [stdout] 22 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToEdge` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `ClampToBorder` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 261 |         gl::BindTexture(self.target, self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Repeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `MirroredRepeat` is named the same as one of the variants of the type `texture::WrapMode`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::WrapMode::MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToEdge`
[INFO] [stdout]   --> src/texture.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToEdge`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `ClampToBorder`
[INFO] [stdout]   --> src/texture.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ClampToBorder`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:266:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_s` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:270:29
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn wrap_s(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Repeat`
[INFO] [stdout]   --> src/texture.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Repeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `MirroredRepeat`
[INFO] [stdout]   --> src/texture.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_MirroredRepeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:267:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 267 |         self.wrap_r(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_t` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:275:29
[INFO] [stdout]     |
[INFO] [stdout] 275 |     pub fn wrap_t(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 45 |             ClampToEdge => gl::CLAMP_TO_EDGE,
[INFO] [stdout]    |             ----------- data moved here
[INFO] [stdout] 46 |             ClampToBorder => gl::CLAMP_TO_BORDER,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 47 |             Repeat => gl::REPEAT,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 48 |             MirroredRepeat => gl::MIRRORED_REPEAT
[INFO] [stdout]    |             -------------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 44 -         match *self {
[INFO] [stdout] 44 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_S, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Nearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:277:9
[INFO] [stdout]     |
[INFO] [stdout] 277 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_T, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Linear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_R, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapNearest` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `NearestMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `fm`
[INFO] [stdout]    --> src/texture.rs:294:25
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |                          -- move occurs because `fm` has type `FilterMethod`, which does not implement the `Copy` trait
[INFO] [stdout] 293 |         self.min_filter(fm);
[INFO] [stdout]     |                         -- value moved here
[INFO] [stdout] 294 |         self.mag_filter(fm);
[INFO] [stdout]     |                         ^^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `min_filter` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:297:34
[INFO] [stdout]     |
[INFO] [stdout] 297 |     pub fn min_filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |            ----------            ^^^^^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `FilterMethod` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub enum FilterMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LinearMipmapLinear` is named the same as one of the variants of the type `texture::FilterMethod`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `texture::FilterMethod::LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 |         gl::TexParameteri(self.target, gl::TEXTURE_MIN_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 304 |         gl::TexParameteri(self.target, gl::TEXTURE_MAG_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `GenerateMipmap` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         gl::GenerateMipmap(self.target);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- matches any value
[INFO] [stdout] ...
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Nearest`
[INFO] [stdout]   --> src/texture.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Nearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Linear`
[INFO] [stdout]   --> src/texture.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Linear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapNearest`
[INFO] [stdout]   --> src/texture.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapNearest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `NearestMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_NearestMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LinearMipmapLinear`
[INFO] [stdout]   --> src/texture.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LinearMipmapLinear`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/texture.rs:64:15
[INFO] [stdout]    |
[INFO] [stdout] 64 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 65 |             Nearest => gl::NEAREST,
[INFO] [stdout]    |             ------- data moved here
[INFO] [stdout] 66 |             Linear => gl::LINEAR,
[INFO] [stdout]    |             ------ ...and here
[INFO] [stdout] 67 |             NearestMipmapNearest => gl::NEAREST_MIPMAP_NEAREST,
[INFO] [stdout]    |             -------------------- ...and here
[INFO] [stdout] 68 |             LinearMipmapNearest => gl::LINEAR_MIPMAP_NEAREST,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 69 |             NearestMipmapLinear => gl::NEAREST_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------- ...and here
[INFO] [stdout] 70 |             LinearMipmapLinear => gl::LINEAR_MIPMAP_LINEAR,
[INFO] [stdout]    |             ------------------ ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 64 -         match *self {
[INFO] [stdout] 64 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `ActiveTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         gl::ActiveTexture(gl::TEXTURE0 + num);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `PrimitiveRestartIndex` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/lib.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     gl::PrimitiveRestartIndex(index);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Points` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `Primitive::Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Lines` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `Primitive::Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineLoop` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Triangles` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `BindTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:261:9
[INFO] [stdout]     |
[INFO] [stdout] 261 |         gl::BindTexture(self.target, self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleFan` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Points`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Lines`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineStrip`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineLoop`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Triangles`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleStrip`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleFan`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:266:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_s` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:270:29
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn wrap_s(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/lib.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ data moved here
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             -------- ...and here
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 59 -         match *self {
[INFO] [stdout] 59 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `w`
[INFO] [stdout]    --> src/texture.rs:267:21
[INFO] [stdout]     |
[INFO] [stdout] 264 |     pub fn wrap(&self, w: WrapMode) {
[INFO] [stdout]     |                        - move occurs because `w` has type `WrapMode`, which does not implement the `Copy` trait
[INFO] [stdout] 265 |         self.wrap_s(w);
[INFO] [stdout] 266 |         self.wrap_t(w);
[INFO] [stdout]     |                     - value moved here
[INFO] [stdout] 267 |         self.wrap_r(w);
[INFO] [stdout]     |                     ^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `wrap_t` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:275:29
[INFO] [stdout]     |
[INFO] [stdout] 275 |     pub fn wrap_t(&self, w: WrapMode) {
[INFO] [stdout]     |            ------           ^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `WrapMode` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:35:1
[INFO] [stdout]     |
[INFO] [stdout] 35  | pub enum WrapMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_S, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:277:9
[INFO] [stdout]     |
[INFO] [stdout] 277 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_T, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         gl::TexParameteri(self.target, gl::TEXTURE_WRAP_R, w.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: use of moved value: `fm`
[INFO] [stdout]    --> src/texture.rs:294:25
[INFO] [stdout]     |
[INFO] [stdout] 292 |     pub fn filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |                          -- move occurs because `fm` has type `FilterMethod`, which does not implement the `Copy` trait
[INFO] [stdout] 293 |         self.min_filter(fm);
[INFO] [stdout]     |                         -- value moved here
[INFO] [stdout] 294 |         self.mag_filter(fm);
[INFO] [stdout]     |                         ^^ value used here after move
[INFO] [stdout]     |
[INFO] [stdout] note: consider changing this parameter type in method `min_filter` to borrow instead if owning the value isn't necessary
[INFO] [stdout]    --> src/texture.rs:297:34
[INFO] [stdout]     |
[INFO] [stdout] 297 |     pub fn min_filter(&self, fm: FilterMethod) {
[INFO] [stdout]     |            ----------            ^^^^^^^^^^^^ this parameter takes ownership of the value
[INFO] [stdout]     |            |
[INFO] [stdout]     |            in this method
[INFO] [stdout] note: if `FilterMethod` implemented `Clone`, you could clone the value
[INFO] [stdout]    --> src/texture.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout] 53  | pub enum FilterMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 |         gl::TexParameteri(self.target, gl::TEXTURE_MIN_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `TexParameteri` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:304:9
[INFO] [stdout]     |
[INFO] [stdout] 304 |         gl::TexParameteri(self.target, gl::TEXTURE_MAG_FILTER, fm.to_glenum() as GLint);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `GenerateMipmap` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:310:9
[INFO] [stdout]     |
[INFO] [stdout] 310 |         gl::GenerateMipmap(self.target);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 221 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0133, E0170, E0382, E0412, E0425, E0432, E0433, E0507, E0599...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `ActiveTexture` is unsafe and requires unsafe function or block
[INFO] [stdout]    --> src/texture.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         gl::ActiveTexture(gl::TEXTURE0 + num);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0133]: call to unsafe function `PrimitiveRestartIndex` is unsafe and requires unsafe function or block
[INFO] [stdout]   --> src/lib.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     gl::PrimitiveRestartIndex(index);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Points` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: to match on the variant, qualify the path: `Primitive::Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Lines` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: to match on the variant, qualify the path: `Primitive::Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `LineLoop` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `Triangles` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleStrip` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0170]: pattern binding `TriangleFan` is named the same as one of the variants of the type `Primitive`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: to match on the variant, qualify the path: `Primitive::TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unreachable pattern
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ matches any value
[INFO] [stdout] ...
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ unreachable pattern
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Points`
[INFO] [stdout]   --> src/lib.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_Points`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Lines`
[INFO] [stdout]   --> src/lib.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_Lines`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineStrip`
[INFO] [stdout]   --> src/lib.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `LineLoop`
[INFO] [stdout]   --> src/lib.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_LineLoop`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `Triangles`
[INFO] [stdout]   --> src/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_Triangles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleStrip`
[INFO] [stdout]   --> src/lib.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleStrip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused variable: `TriangleFan`
[INFO] [stdout]   --> src/lib.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TriangleFan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference
[INFO] [stdout]   --> src/lib.rs:59:15
[INFO] [stdout]    |
[INFO] [stdout] 59 |         match *self {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 60 |             Points        => gl::POINTS,
[INFO] [stdout]    |             ------ data moved here
[INFO] [stdout] 61 |             Lines         => gl::LINES,
[INFO] [stdout]    |             ----- ...and here
[INFO] [stdout] 62 |             LineStrip     => gl::LINE_STRIP,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 63 |             LineLoop      => gl::LINE_LOOP,
[INFO] [stdout]    |             -------- ...and here
[INFO] [stdout] 64 |             Triangles     => gl::TRIANGLES,
[INFO] [stdout]    |             --------- ...and here
[INFO] [stdout] 65 |             TriangleStrip => gl::TRIANGLE_STRIP,
[INFO] [stdout]    |             ------------- ...and here
[INFO] [stdout] 66 |             TriangleFan   => gl::TRIANGLE_FAN
[INFO] [stdout]    |             ----------- ...and here
[INFO] [stdout]    |
[INFO] [stdout]    = note: move occurs because these variables have types that don't implement the `Copy` trait
[INFO] [stdout] help: consider removing the dereference here
[INFO] [stdout]    |
[INFO] [stdout] 59 -         match *self {
[INFO] [stdout] 59 +         match self {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 221 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0133, E0170, E0382, E0412, E0425, E0432, E0433, E0507, E0599...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hgl` (lib) due to 222 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `hgl` (lib test) due to 222 previous errors
[INFO] running `Command { std: "docker" "inspect" "928403446de9613e5f75720cc81292b9b05ad15607b14d407258fac0f63c661b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "928403446de9613e5f75720cc81292b9b05ad15607b14d407258fac0f63c661b", kill_on_drop: false }`
[INFO] [stdout] 928403446de9613e5f75720cc81292b9b05ad15607b14d407258fac0f63c661b
