[INFO] cloning repository https://github.com/guangchenli/Raster
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/guangchenli/Raster" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fguangchenli%2FRaster", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fguangchenli%2FRaster'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e73b12adbc1f8e65b5d41290638d714ed7880d47
[INFO] checking guangchenli/Raster/e73b12adbc1f8e65b5d41290638d714ed7880d47 against 22950ab9e29e11620a10905f027f141ea126966e for pr-160581
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fguangchenli%2FRaster" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/guangchenli/Raster
[INFO] finished tweaking git repo https://github.com/guangchenli/Raster
[INFO] tweaked toml for git repo https://github.com/guangchenli/Raster written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/guangchenli/Raster on toolchain 22950ab9e29e11620a10905f027f141ea126966e
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+22950ab9e29e11620a10905f027f141ea126966e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/guangchenli/Raster 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" "+22950ab9e29e11620a10905f027f141ea126966e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tobj v2.0.2
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.8
[INFO] [stderr]   Downloaded getrandom v0.1.14
[INFO] [stderr]   Downloaded approx v0.3.2
[INFO] [stderr]   Downloaded memoffset v0.5.5
[INFO] [stderr]   Downloaded color_quant v1.0.1
[INFO] [stderr]   Downloaded png v0.11.0
[INFO] [stderr]   Downloaded hermit-abi v0.1.15
[INFO] [stderr]   Downloaded typenum v1.12.0
[INFO] [stderr]   Downloaded num-integer v0.1.43
[INFO] [stderr]   Downloaded byteorder v1.3.4
[INFO] [stderr]   Downloaded num-traits v0.2.12
[INFO] [stderr]   Downloaded num-iter v0.1.41
[INFO] [stderr]   Downloaded adler32 v1.1.0
[INFO] [stderr]   Downloaded lzw v0.10.0
[INFO] [stderr]   Downloaded enum_primitive v0.1.1
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.16
[INFO] [stderr]   Downloaded crossbeam-queue v0.2.3
[INFO] [stderr]   Downloaded rand_distr v0.2.2
[INFO] [stderr]   Downloaded gif v0.9.2
[INFO] [stderr]   Downloaded paste-impl v0.1.18
[INFO] [stderr]   Downloaded either v1.5.3
[INFO] [stderr]   Downloaded paste v0.1.18
[INFO] [stderr]   Downloaded generic-array v0.13.2
[INFO] [stderr]   Downloaded num-rational v0.1.42
[INFO] [stderr]   Downloaded simba v0.1.5
[INFO] [stderr]   Downloaded inflate v0.3.4
[INFO] [stderr]   Downloaded rayon-core v1.7.1
[INFO] [stderr]   Downloaded matrixmultiply v0.2.3
[INFO] [stderr]   Downloaded image v0.17.0
[INFO] [stderr]   Downloaded deflate v0.7.20
[INFO] [stderr]   Downloaded rayon v1.3.1
[INFO] [stderr]   Downloaded nalgebra v0.21.1
[INFO] [stderr]   Downloaded jpeg-decoder v0.1.20
[INFO] [stderr]   Downloaded libc v0.2.72
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac
[INFO] running `Command { std: "docker" "start" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac" "/opt/rustwide/cargo-home/bin/cargo" "+22950ab9e29e11620a10905f027f141ea126966e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac" "/opt/rustwide/cargo-home/bin/cargo" "+22950ab9e29e11620a10905f027f141ea126966e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling libm v0.2.1
[INFO] [stderr]    Compiling libc v0.2.72
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling rayon-core v1.7.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling proc-macro-hack v0.5.16
[INFO] [stderr]     Checking adler32 v1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.5
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling num-iter v0.1.41
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling rayon v1.3.1
[INFO] [stderr]    Compiling typenum v1.12.0
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]     Checking either v1.5.3
[INFO] [stderr]    Compiling paste-impl v0.1.18
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking deflate v0.7.20
[INFO] [stderr]     Checking inflate v0.3.4
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking paste v0.1.18
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking gif v0.9.2
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking matrixmultiply v0.2.3
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking tobj v2.0.2
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking enum_primitive v0.1.1
[INFO] [stderr]     Checking num-rational v0.1.42
[INFO] [stderr]     Checking generic-array v0.13.2
[INFO] [stderr]     Checking png v0.11.0
[INFO] [stderr]     Checking simba v0.1.5
[INFO] [stderr]     Checking rand_distr v0.2.2
[INFO] [stderr]     Checking nalgebra v0.21.1
[INFO] [stderr]     Checking jpeg-decoder v0.1.20
[INFO] [stderr]     Checking image v0.17.0
[INFO] [stderr]     Checking raster v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/shader.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |         };
[INFO] [stdout]    |          ^
[INFO] [stdout] ...
[INFO] [stdout] 92 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, "Expecting TextureCoord!");
[INFO] [stdout]    |                   --------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[deny(semicolon_in_expressions_from_macros)]` (part of `#[deny(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/shader.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |         };
[INFO] [stdout]    |          ^
[INFO] [stdout] ...
[INFO] [stdout] 93 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, "Expecting TextureCoord!");
[INFO] [stdout]    |                   --------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/shader.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |         };
[INFO] [stdout]    |          ^
[INFO] [stdout] ...
[INFO] [stdout] 94 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, "Expecting TextureCoord!");
[INFO] [stdout]    |                   --------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 143 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 144 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 145 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 146 |         let li_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                         -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 147 |         let li_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                         -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 148 |         let li_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                         -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 206 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 207 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 208 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 209 |         let diffuse_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                              -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 210 |         let diffuse_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                              -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 211 |         let diffuse_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                              -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 212 |         let spec_int_v0 = unwrap_vertex_attr_1f!(attrs.0[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                           -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 213 |         let spec_int_v1 = unwrap_vertex_attr_1f!(attrs.1[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                           -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 214 |         let spec_int_v2 = unwrap_vertex_attr_1f!(attrs.2[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                           -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/shader.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |         };
[INFO] [stdout]    |          ^
[INFO] [stdout] ...
[INFO] [stdout] 92 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, "Expecting TextureCoord!");
[INFO] [stdout]    |                   --------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[deny(semicolon_in_expressions_from_macros)]` (part of `#[deny(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/shader.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |         };
[INFO] [stdout]    |          ^
[INFO] [stdout] ...
[INFO] [stdout] 93 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, "Expecting TextureCoord!");
[INFO] [stdout]    |                   --------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/shader.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |         };
[INFO] [stdout]    |          ^
[INFO] [stdout] ...
[INFO] [stdout] 94 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, "Expecting TextureCoord!");
[INFO] [stdout]    |                   --------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 143 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 144 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 145 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 146 |         let li_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                         -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 147 |         let li_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                         -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 148 |         let li_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                         -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 206 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 207 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:18:10
[INFO] [stdout]     |
[INFO] [stdout]  18 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 208 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                   -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_2f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 209 |         let diffuse_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                              -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 210 |         let diffuse_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                              -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 211 |         let diffuse_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                              -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 212 |         let spec_int_v0 = unwrap_vertex_attr_1f!(attrs.0[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                           -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 213 |         let spec_int_v1 = unwrap_vertex_attr_1f!(attrs.1[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                           -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/shader.rs:9:10
[INFO] [stdout]     |
[INFO] [stdout]   9 |         };
[INFO] [stdout]     |          ^
[INFO] [stdout] ...
[INFO] [stdout] 214 |         let spec_int_v2 = unwrap_vertex_attr_1f!(attrs.2[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                           -------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this error originates in the macro `unwrap_vertex_attr_1f` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_gouraud_color` is never used
[INFO] [stdout]   --> src/shader.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn calc_gouraud_color(li_int : f32, ambient : f32, rgb : &Rgb<u8>) -> Rgb<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VanillaShader` is never constructed
[INFO] [stdout]   --> src/shader.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct VanillaShader<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GouraudShader` is never constructed
[INFO] [stdout]    --> src/shader.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct GouraudShader<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:143:80
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:144:80
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:145:80
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:146:88
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let li_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:147:88
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let li_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:148:88
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let li_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:206:80
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:207:80
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:208:80
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:209:93
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let diffuse_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:210:93
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let diffuse_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:211:93
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let diffuse_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:212:90
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let spec_int_v0 = unwrap_vertex_attr_1f!(attrs.0[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:213:90
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let spec_int_v1 = unwrap_vertex_attr_1f!(attrs.1[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:214:90
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let spec_int_v2 = unwrap_vertex_attr_1f!(attrs.2[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `raster` (bin "raster" test) due to 36 previous errors; 18 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: function `calc_gouraud_color` is never used
[INFO] [stdout]   --> src/shader.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn calc_gouraud_color(li_int : f32, ambient : f32, rgb : &Rgb<u8>) -> Rgb<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VanillaShader` is never constructed
[INFO] [stdout]   --> src/shader.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct VanillaShader<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GouraudShader` is never constructed
[INFO] [stdout]    --> src/shader.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct GouraudShader<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:143:80
[INFO] [stdout]     |
[INFO] [stdout] 143 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:144:80
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:145:80
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:146:88
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let li_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:147:88
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let li_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:148:88
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let li_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:206:80
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let uv0 = unwrap_vertex_attr_2f!(attrs.0[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:207:80
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let uv1 = unwrap_vertex_attr_2f!(attrs.1[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:208:80
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let uv2 = unwrap_vertex_attr_2f!(attrs.2[0], VertexAttr, TextureCoord, msg_texcoord);
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:209:93
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let diffuse_int_v0 = unwrap_vertex_attr_1f!(attrs.0[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:210:93
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let diffuse_int_v1 = unwrap_vertex_attr_1f!(attrs.1[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:211:93
[INFO] [stdout]     |
[INFO] [stdout] 211 |         let diffuse_int_v2 = unwrap_vertex_attr_1f!(attrs.2[1], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:212:90
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let spec_int_v0 = unwrap_vertex_attr_1f!(attrs.0[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:213:90
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let spec_int_v1 = unwrap_vertex_attr_1f!(attrs.1[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/shader.rs:214:90
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let spec_int_v2 = unwrap_vertex_attr_1f!(attrs.2[2], VertexAttr, LightIntensity, msg_li_int);
[INFO] [stdout]     |                                                                                          ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `raster` (bin "raster") due to 36 previous errors; 18 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac", kill_on_drop: false }`
[INFO] [stdout] 15881f4356064138dc0b7fc50eeeec394d4c3c17f2647d5a93569485c5df90ac
