[INFO] fetching crate dfdx 0.13.0...
[INFO] checking dfdx-0.13.0 against master#3f1be1ec7ec3d8e80beb381ee82164a0aa3ca777 for pr-132289
[INFO] extracting crate dfdx 0.13.0 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate dfdx 0.13.0 on toolchain 3f1be1ec7ec3d8e80beb381ee82164a0aa3ca777
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3f1be1ec7ec3d8e80beb381ee82164a0aa3ca777" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate dfdx 0.13.0
[INFO] finished tweaking crates.io crate dfdx 0.13.0
[INFO] tweaked toml for crates.io crate dfdx 0.13.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate crates.io crate dfdx 0.13.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3f1be1ec7ec3d8e80beb381ee82164a0aa3ca777" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded safetensors v0.3.1
[INFO] [stderr]   Downloaded mnist v0.5.0
[INFO] [stderr]   Downloaded hashbrown v0.8.2
[INFO] [stderr]   Downloaded gemm-c32 v0.15.3
[INFO] [stderr]   Downloaded reborrow v0.5.4
[INFO] [stderr]   Downloaded serde_derive v1.0.162
[INFO] [stderr]   Downloaded gemm-common v0.15.3
[INFO] [stderr]   Downloaded gemm v0.15.4
[INFO] [stderr]   Downloaded gemm-f64 v0.15.3
[INFO] [stderr]   Downloaded seq-macro v0.3.3
[INFO] [stderr]   Downloaded ahash v0.3.8
[INFO] [stderr]   Downloaded serde v1.0.162
[INFO] [stderr]   Downloaded dyn-stack v0.9.0
[INFO] [stderr]   Downloaded cudarc v0.9.13
[INFO] [stderr]   Downloaded paste v1.0.12
[INFO] [stderr]   Downloaded portable-atomic v1.2.0
[INFO] [stderr]   Downloaded half v2.3.1
[INFO] [stderr]   Downloaded gemm-f32 v0.15.3
[INFO] [stderr]   Downloaded gemm-f16 v0.15.3
[INFO] [stderr]   Downloaded gemm-c64 v0.15.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+3f1be1ec7ec3d8e80beb381ee82164a0aa3ca777" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dccadd82259df402ee0acd30e9f056418e742acd2034acb463fe59175247a62d
[INFO] running `Command { std: "docker" "start" "-a" "dccadd82259df402ee0acd30e9f056418e742acd2034acb463fe59175247a62d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dccadd82259df402ee0acd30e9f056418e742acd2034acb463fe59175247a62d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dccadd82259df402ee0acd30e9f056418e742acd2034acb463fe59175247a62d", kill_on_drop: false }`
[INFO] [stdout] dccadd82259df402ee0acd30e9f056418e742acd2034acb463fe59175247a62d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+3f1be1ec7ec3d8e80beb381ee82164a0aa3ca777" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 51365876504f65b2fbbcd729d933cbdc06d812f07813bfc25f3a8c89a2980b62
[INFO] running `Command { std: "docker" "start" "-a" "51365876504f65b2fbbcd729d933cbdc06d812f07813bfc25f3a8c89a2980b62", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.142
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling libm v0.2.7
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.14
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling paste v1.0.12
[INFO] [stderr]     Checking either v1.8.1
[INFO] [stderr]     Checking bytemuck v1.13.1
[INFO] [stderr]     Checking reborrow v0.5.4
[INFO] [stderr]     Checking raw-cpuid v10.7.0
[INFO] [stderr]    Compiling seq-macro v0.3.3
[INFO] [stderr]     Checking dyn-stack v0.9.0
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]     Checking crossbeam-channel v0.5.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking crossbeam-deque v0.8.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling rustix v0.37.19
[INFO] [stderr]    Compiling portable-atomic v0.3.19
[INFO] [stderr]     Checking unicode-width v0.1.10
[INFO] [stderr]    Compiling dfdx v0.13.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking linux-raw-sys v0.3.7
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking fastrand v1.9.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking mnist v0.5.0
[INFO] [stderr]     Checking num-complex v0.4.3
[INFO] [stderr]     Checking half v2.3.1
[INFO] [stderr]     Checking num_cpus v1.15.0
[INFO] [stderr]     Checking console v0.15.5
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking indicatif v0.17.3
[INFO] [stderr]     Checking rayon v1.7.0
[INFO] [stderr]     Checking tempfile v3.5.0
[INFO] [stderr]     Checking gemm-common v0.15.3
[INFO] [stderr]     Checking gemm-f32 v0.15.3
[INFO] [stderr]     Checking gemm-c64 v0.15.3
[INFO] [stderr]     Checking gemm-c32 v0.15.3
[INFO] [stderr]     Checking gemm-f64 v0.15.3
[INFO] [stderr]     Checking gemm-f16 v0.15.3
[INFO] [stderr]     Checking gemm v0.15.4
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:221:18
[INFO] [stdout]     |
[INFO] [stdout] 221 |         unsafe { _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:220:52
[INFO] [stdout]     |
[INFO] [stdout] 220 |         use std::arch::x86_64::{_MM_FLUSH_ZERO_ON, _MM_SET_FLUSH_ZERO_MODE};
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:240:18
[INFO] [stdout]     |
[INFO] [stdout] 240 |         unsafe { _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_OFF) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:239:53
[INFO] [stdout]     |
[INFO] [stdout] 239 |         use std::arch::x86_64::{_MM_FLUSH_ZERO_OFF, _MM_SET_FLUSH_ZERO_MODE};
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::to_device::*`
[INFO] [stdout]  --> src/nn/module.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use super::to_device::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromPrimitive`
[INFO] [stdout]    --> src/lib.rs:246:33
[INFO] [stdout]     |
[INFO] [stdout] 246 |     pub use num_traits::{Float, FromPrimitive, NumCast, Zero};
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         TryConv2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         TryConv2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:140:19
[INFO] [stdout]     |
[INFO] [stdout] 140 |       type Output = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 141 | |         Const<S>,
[INFO] [stdout] 142 | |         Const<P>,
[INFO] [stdout] 143 | |         Const<L>,
[INFO] [stdout] 144 | |         Const<G>,
[INFO] [stdout] 145 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:140:19
[INFO] [stdout]     |
[INFO] [stdout] 140 |       type Output = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 141 | |         Const<S>,
[INFO] [stdout] 142 | |         Const<P>,
[INFO] [stdout] 143 | |         Const<L>,
[INFO] [stdout] 144 | |         Const<G>,
[INFO] [stdout] 145 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout] 146 |       type Error = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 147 | |         Const<S>,
[INFO] [stdout] 148 | |         Const<P>,
[INFO] [stdout] 149 | |         Const<L>,
[INFO] [stdout] 150 | |         Const<G>,
[INFO] [stdout] 151 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout] 146 |       type Error = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 147 | |         Const<S>,
[INFO] [stdout] 148 | |         Const<P>,
[INFO] [stdout] 149 | |         Const<L>,
[INFO] [stdout] 150 | |         Const<G>,
[INFO] [stdout] 151 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:153:38
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:153:38
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         TryConvTrans2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         TryConvTrans2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |       type Output = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 138 | |         Const<S>,
[INFO] [stdout] 139 | |         Const<P>,
[INFO] [stdout] 140 | |         Const<L>,
[INFO] [stdout] 141 | |         Const<G>,
[INFO] [stdout] 142 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |       type Output = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 138 | |         Const<S>,
[INFO] [stdout] 139 | |         Const<P>,
[INFO] [stdout] 140 | |         Const<L>,
[INFO] [stdout] 141 | |         Const<G>,
[INFO] [stdout] 142 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:143:18
[INFO] [stdout]     |
[INFO] [stdout] 143 |       type Error = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 144 | |         Const<S>,
[INFO] [stdout] 145 | |         Const<P>,
[INFO] [stdout] 146 | |         Const<L>,
[INFO] [stdout] 147 | |         Const<G>,
[INFO] [stdout] 148 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:143:18
[INFO] [stdout]     |
[INFO] [stdout] 143 |       type Error = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 144 | |         Const<S>,
[INFO] [stdout] 145 | |         Const<P>,
[INFO] [stdout] 146 | |         Const<L>,
[INFO] [stdout] 147 | |         Const<G>,
[INFO] [stdout] 148 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:150:38
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:150:38
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:221:18
[INFO] [stdout]     |
[INFO] [stdout] 221 |         unsafe { _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:220:52
[INFO] [stdout]     |
[INFO] [stdout] 220 |         use std::arch::x86_64::{_MM_FLUSH_ZERO_ON, _MM_SET_FLUSH_ZERO_MODE};
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:240:18
[INFO] [stdout]     |
[INFO] [stdout] 240 |         unsafe { _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_OFF) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead
[INFO] [stdout]    --> src/lib.rs:239:53
[INFO] [stdout]     |
[INFO] [stdout] 239 |         use std::arch::x86_64::{_MM_FLUSH_ZERO_OFF, _MM_SET_FLUSH_ZERO_MODE};
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |     type Output = Tensor<Rank1<{ C * H * W }>, E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(shape::Const<{ C * H * W }>,)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |     type Output = Tensor<Rank1<{ C * H * W }>, E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:26:70
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn try_forward(&self, input: Tensor<Rank3<C, H, W>, E, D, T>) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                                                      |
[INFO] [stdout]    |                                                                      the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                      ...so that the type `(shape::Const<{ C * H * W }>,)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:26:70
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn try_forward(&self, input: Tensor<Rank3<C, H, W>, E, D, T>) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                                                      |
[INFO] [stdout]    |                                                                      the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                      ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     type Output = Tensor<(B, Const<{ C * H * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(B, shape::Const<{ C * H * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     type Output = Tensor<(B, Const<{ C * H * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |     ) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `(B, shape::Const<{ C * H * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |     ) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:43:65
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |                                                                 |
[INFO] [stdout]    |                                                                 the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                 ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:43:65
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |                                                                 |
[INFO] [stdout]    |                                                                 the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                 ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:43:65
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |                                                                 |
[INFO] [stdout]    |                                                                 the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                 ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                    ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                    ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                    ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 |     type Output = Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 |     type Output = Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 |     type Output = Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     type Output = Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     type Output = Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     type Output = Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         TryConv2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         TryConv2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:140:19
[INFO] [stdout]     |
[INFO] [stdout] 140 |       type Output = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 141 | |         Const<S>,
[INFO] [stdout] 142 | |         Const<P>,
[INFO] [stdout] 143 | |         Const<L>,
[INFO] [stdout] 144 | |         Const<G>,
[INFO] [stdout] 145 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:140:19
[INFO] [stdout]     |
[INFO] [stdout] 140 |       type Output = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 141 | |         Const<S>,
[INFO] [stdout] 142 | |         Const<P>,
[INFO] [stdout] 143 | |         Const<L>,
[INFO] [stdout] 144 | |         Const<G>,
[INFO] [stdout] 145 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout] 146 |       type Error = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 147 | |         Const<S>,
[INFO] [stdout] 148 | |         Const<P>,
[INFO] [stdout] 149 | |         Const<L>,
[INFO] [stdout] 150 | |         Const<G>,
[INFO] [stdout] 151 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout] 146 |       type Error = <(Img, Tensor<Rank4<O, { I / G }, K, K>, E, D>) as TryConv2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 147 | |         Const<S>,
[INFO] [stdout] 148 | |         Const<P>,
[INFO] [stdout] 149 | |         Const<L>,
[INFO] [stdout] 150 | |         Const<G>,
[INFO] [stdout] 151 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:153:38
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `(shape::Const<O>, shape::Const<{ I / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/conv.rs:153:38
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `shape::Const<{ I / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 131 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         TryConvTrans2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         TryConvTrans2D<Const<S>, Const<P>, Const<L>, Const<G>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |         ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |       type Output = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 138 | |         Const<S>,
[INFO] [stdout] 139 | |         Const<P>,
[INFO] [stdout] 140 | |         Const<L>,
[INFO] [stdout] 141 | |         Const<G>,
[INFO] [stdout] 142 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |       type Output = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  ___________________^
[INFO] [stdout] 138 | |         Const<S>,
[INFO] [stdout] 139 | |         Const<P>,
[INFO] [stdout] 140 | |         Const<L>,
[INFO] [stdout] 141 | |         Const<G>,
[INFO] [stdout] 142 | |     >>::Convolved;
[INFO] [stdout]     | |                 ^
[INFO] [stdout]     | |                 |
[INFO] [stdout]     | |_________________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                   ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:143:18
[INFO] [stdout]     |
[INFO] [stdout] 143 |       type Error = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 144 | |         Const<S>,
[INFO] [stdout] 145 | |         Const<P>,
[INFO] [stdout] 146 | |         Const<L>,
[INFO] [stdout] 147 | |         Const<G>,
[INFO] [stdout] 148 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:143:18
[INFO] [stdout]     |
[INFO] [stdout] 143 |       type Error = <(Img, Tensor<Rank4<C, { O / G }, K, K>, E, D>) as TryConvTrans2D<
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 144 | |         Const<S>,
[INFO] [stdout] 145 | |         Const<P>,
[INFO] [stdout] 146 | |         Const<L>,
[INFO] [stdout] 147 | |         Const<G>,
[INFO] [stdout] 148 | |     >>::Error;
[INFO] [stdout]     | |             ^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |_____________the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |               ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:150:38
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `(shape::Const<C>, shape::Const<{ O / G }>, shape::Const<K>, shape::Const<K>)` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `Img` may not live long enough
[INFO] [stdout]    --> src/nn/convtrans.rs:150:38
[INFO] [stdout]     |
[INFO] [stdout] 150 |     fn try_forward(&self, x: Img) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the parameter type `Img` must be valid for the static lifetime...
[INFO] [stdout]     |                                      ...so that the type `shape::Const<{ O / G }>` will meet its required lifetime bounds...
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Img: 'static,
[INFO] [stdout]     |            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |     type Output = Tensor<Rank1<{ C * H * W }>, E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(shape::Const<{ C * H * W }>,)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 23 |     type Output = Tensor<Rank1<{ C * H * W }>, E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:26:70
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn try_forward(&self, input: Tensor<Rank3<C, H, W>, E, D, T>) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                                                      |
[INFO] [stdout]    |                                                                      the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                      ...so that the type `(shape::Const<{ C * H * W }>,)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:26:70
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn try_forward(&self, input: Tensor<Rank3<C, H, W>, E, D, T>) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                                                      |
[INFO] [stdout]    |                                                                      the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                      ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     type Output = Tensor<(B, Const<{ C * H * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(B, shape::Const<{ C * H * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     type Output = Tensor<(B, Const<{ C * H * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |     ) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `(B, shape::Const<{ C * H * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |     ) -> Result<Self::Output, D::Err> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ C * H * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:43:65
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |                                                                 |
[INFO] [stdout]    |                                                                 the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                 ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:43:65
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |                                                                 |
[INFO] [stdout]    |                                                                 the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                 ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:43:65
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                 ^^^^^
[INFO] [stdout]    |                                                                 |
[INFO] [stdout]    |                                                                 the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                 ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                    ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                    ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>: Sized,
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                                                    ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:73:18
[INFO] [stdout]    |
[INFO] [stdout] 73 |     type Error = <Self::Output as HasErr>::Err;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                  ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 |     type Output = Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 |     type Output = Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 45 |     type Output = Tensor<(C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `(C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     type Output = Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     type Output = Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:72:19
[INFO] [stdout]    |
[INFO] [stdout] 72 |     type Output = Tensor<(B, C, Const<{ IH * H }>, Const<{ IW * W }>), E, D, T>;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                   ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds...
[INFO] [stdout]    |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]   --> src/tensor/tensor_impls.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Tensor<S: Shape, E, D: Storage<E>, T = NoneTape> {
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `(B, C, shape::Const<{ IH * H }>, shape::Const<{ IW * W }>)` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IW * W }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |          ...so that the type `shape::Const<{ IH * H }>` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R4` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R5` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R4` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R6` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R5` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R4` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R4` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R5` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R4` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R6` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R5` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R4` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R4` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R5` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R4` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R6` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R5` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R4` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R3` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R2` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:96:47
[INFO] [stdout]     |
[INFO] [stdout] 96  |         impl<$($range: RangeBounds<usize>),*> SliceShape<($($range,)*)> for [usize; {length!($($range)*)}]
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                               ...so that the type `R1` will meet its required lifetime bounds...
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: ...that is required by this bound
[INFO] [stdout]    --> src/shapes/slice.rs:57:26
[INFO] [stdout]     |
[INFO] [stdout] 57  | pub trait SliceShape<R>: Shape {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 114 | slice_shape!([D1][R1][0]);
[INFO] [stdout]     | ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 114 | slice_shape!([D1][R1: 'static][0]);
[INFO] [stdout]     |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2: 'static] [0 1]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1 R2] [0 1]);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 115 | slice_shape!([D1 D2] [R1: 'static R2] [0 1]);
[INFO] [stdout]     |                         +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3: 'static] [0 1 2]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2: 'static R3] [0 1 2]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1 R2 R3] [0 1 2]);
[INFO] [stdout]     | ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 116 | slice_shape!([D1 D2 D3] [R1: 'static R2 R3] [0 1 2]);
[INFO] [stdout]     |                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R4` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4: 'static] [0 1 2 3]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3: 'static R4] [0 1 2 3]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2: 'static R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1 R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 117 | slice_shape!([D1 D2 D3 D4] [R1: 'static R2 R3 R4] [0 1 2 3]);
[INFO] [stdout]     |                               +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R5` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5: 'static] [0 1 2 3 4]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R4` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4: 'static R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3: 'static R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2: 'static R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1 R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 118 | slice_shape!([D1 D2 D3 D4 D5] [R1: 'static R2 R3 R4 R5] [0 1 2 3 4]);
[INFO] [stdout]     |                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `[usize; {length!($($range)*)}]` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R6` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R6` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R6` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6: 'static] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R5` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R5` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R5` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5: 'static R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                                 +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R4` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R4` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R4` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4: 'static R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R3` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R3` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R3` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3: 'static R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R2` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R2` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R2` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2: 'static R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `R1` may not live long enough
[INFO] [stdout]    --> src/shapes/slice.rs:102:55
[INFO] [stdout]     |
[INFO] [stdout] 102 |             fn slice(&self, range: &($($range,)*)) -> Option<Self::Sliced> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       the parameter type `R1` must be valid for the static lifetime...
[INFO] [stdout]     |                                                       ...so that the type `R1` will meet its required lifetime bounds
[INFO] [stdout] ...
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1 R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `slice_shape` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]     |
[INFO] [stdout] 119 | slice_shape!([D1 D2 D3 D4 D5 D6] [R1: 'static R2 R3 R4 R5 R6] [0 1 2 3 4 5]);
[INFO] [stdout]     |                                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         input.try_reshape()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         input.try_reshape_like(&(batch, Const))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         x.generic_upscale2d_like(M::default(), Const, Const)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         x.generic_upscale2d_like(M::default(), Const, Const)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0310`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dfdx` (lib) due to 144 previous errors; 4 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         input.try_reshape()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<const C: usize, const H: usize, const W: usize, D: Device<E>, E: Dtype, T: Tape<E, D> + 'static>
[INFO] [stdout]    |                                                                                            +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/nn/flatten.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         input.try_reshape_like(&(batch, Const))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `T` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `T` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 36 |     T: Tape<E, D> + 'static,
[INFO] [stdout]    |                   +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | /     fn try_forward(
[INFO] [stdout] 49 | |         &self,
[INFO] [stdout] 50 | |         x: Tensor<(C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 51 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         x.generic_upscale2d_like(M::default(), Const, Const)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 38 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | /     fn try_forward(
[INFO] [stdout] 76 | |         &self,
[INFO] [stdout] 77 | |         x: Tensor<(B, C, Const<IH>, Const<IW>), E, D, T>,
[INFO] [stdout] 78 | |     ) -> Result<Self::Output, Self::Error> {
[INFO] [stdout]    | |                                          ^
[INFO] [stdout]    | |                                          |
[INFO] [stdout]    | |__________________________________________the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |                                            ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0310]: the parameter type `M` may not live long enough
[INFO] [stdout]   --> src/nn/upscale.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         x.generic_upscale2d_like(M::default(), Const, Const)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         the parameter type `M` must be valid for the static lifetime...
[INFO] [stdout]    |         ...so that the type `M` will meet its required lifetime bounds
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 65 |         M: UpscaleMethod + 'static,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0310`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `dfdx` (lib test) due to 144 previous errors; 6 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "51365876504f65b2fbbcd729d933cbdc06d812f07813bfc25f3a8c89a2980b62", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51365876504f65b2fbbcd729d933cbdc06d812f07813bfc25f3a8c89a2980b62", kill_on_drop: false }`
[INFO] [stdout] 51365876504f65b2fbbcd729d933cbdc06d812f07813bfc25f3a8c89a2980b62
