[INFO] cloning repository https://github.com/Mokosha/pbrt_rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Mokosha/pbrt_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMokosha%2Fpbrt_rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMokosha%2Fpbrt_rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6ce0c65cebbf706a554aff2397fe5e1a85583181 [INFO] checking Mokosha/pbrt_rust against try#8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 for pr-82565 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMokosha%2Fpbrt_rust" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Mokosha/pbrt_rust on toolchain 8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Mokosha/pbrt_rust [INFO] finished tweaking git repo https://github.com/Mokosha/pbrt_rust [INFO] tweaked toml for git repo https://github.com/Mokosha/pbrt_rust written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/Mokosha/pbrt_rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded num v0.1.31 [INFO] [stderr] Downloaded hamming v0.1.3 [INFO] [stderr] Downloaded primal v0.2.3 [INFO] [stderr] Downloaded libc v0.2.7 [INFO] [stderr] Downloaded image v0.6.1 [INFO] [stderr] Downloaded primal-check v0.2.2 [INFO] [stderr] Downloaded lzw v0.9.0 [INFO] [stderr] Downloaded flate2 v0.2.13 [INFO] [stderr] Downloaded libc v0.1.10 [INFO] [stderr] Downloaded primal-bit v0.2.3 [INFO] [stderr] Downloaded inflate v0.1.0 [INFO] [stderr] Downloaded png v0.4.2 [INFO] [stderr] Downloaded gif v0.7.0 [INFO] [stderr] Downloaded primal-estimate v0.2.1 [INFO] [stderr] Downloaded primal-sieve v0.2.4 [INFO] [stderr] Downloaded num_cpus v0.2.6 [INFO] [stderr] Downloaded gcc v0.3.26 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1889ee2559774320576e61b000218977b5d8695b0ab6befc114222276643c72a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "1889ee2559774320576e61b000218977b5d8695b0ab6befc114222276643c72a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1889ee2559774320576e61b000218977b5d8695b0ab6befc114222276643c72a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1889ee2559774320576e61b000218977b5d8695b0ab6befc114222276643c72a", kill_on_drop: false }` [INFO] [stdout] 1889ee2559774320576e61b000218977b5d8695b0ab6befc114222276643c72a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:f2f6bcd4b43ebee4e173f653a26493129bdb64017c85f916b780ca7fbdbaa79d" "/opt/rustwide/cargo-home/bin/cargo" "+8e3afc79c11f48cb3acd1be5b3b7de98fe3f93a8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8980c0e69f6d8ff5fe04b7ef46961ff2d13f13ec435d3944a70e1ed09ef1e79f [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "8980c0e69f6d8ff5fe04b7ef46961ff2d13f13ec435d3944a70e1ed09ef1e79f", kill_on_drop: false }` [INFO] [stderr] Checking libc v0.2.7 [INFO] [stderr] Checking rustc-serialize v0.3.24 [INFO] [stderr] Compiling gcc v0.3.26 [INFO] [stderr] Checking hamming v0.1.3 [INFO] [stderr] Checking primal-estimate v0.2.1 [INFO] [stderr] Checking color_quant v1.0.0 [INFO] [stderr] Checking bitflags v0.3.3 [INFO] [stderr] Checking lzw v0.9.0 [INFO] [stderr] Checking inflate v0.1.0 [INFO] [stderr] Checking glob v0.2.11 [INFO] [stderr] Checking libc v0.1.10 [INFO] [stderr] Checking byteorder v0.4.2 [INFO] [stderr] Checking scoped_threadpool v0.1.7 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Checking bitflags v0.5.0 [INFO] [stderr] Checking primal-bit v0.2.3 [INFO] [stderr] Checking num_cpus v0.2.6 [INFO] [stderr] Checking gif v0.7.0 [INFO] [stderr] Checking rand v0.3.14 [INFO] [stderr] Checking primal-sieve v0.2.4 [INFO] [stderr] Compiling miniz-sys v0.1.7 [INFO] [stderr] Checking flate2 v0.2.13 [INFO] [stderr] Checking num v0.1.31 [INFO] [stderr] Checking png v0.4.2 [INFO] [stderr] Checking primal-check v0.2.2 [INFO] [stderr] Checking enum_primitive v0.1.0 [INFO] [stderr] Checking primal v0.2.3 [INFO] [stderr] Checking image v0.6.1 [INFO] [stderr] Checking pbrt_rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bsdf/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / bitflags! { [INFO] [stdout] 23 | | pub flags BxDFType: u32 { [INFO] [stdout] 24 | | const BSDF_REFLECTION = (1 << 0), [INFO] [stdout] 25 | | const BSDF_TRANSMISSION = (1 << 1), [INFO] [stdout] ... | [INFO] [stdout] 37 | | } [INFO] [stdout] 38 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bsdf/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / bitflags! { [INFO] [stdout] 23 | | pub flags BxDFType: u32 { [INFO] [stdout] 24 | | const BSDF_REFLECTION = (1 << 0), [INFO] [stdout] 25 | | const BSDF_TRANSMISSION = (1 << 1), [INFO] [stdout] ... | [INFO] [stdout] 37 | | } [INFO] [stdout] 38 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bsdf/mod.rs:67:20 [INFO] [stdout] | [INFO] [stdout] 67 | bxdfs: Vec> [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn BxDF` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bsdf/mod.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | bxdf: Box, [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn BxDF` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bsdf/mod.rs:203:27 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn new(input: Box, sc: Spectrum) -> ScaledBxDF { [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn BxDF` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | sigma: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:16:26 [INFO] [stdout] | [INFO] [stdout] 16 | bump_map: Option>>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | k_d: Arc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | sig: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:23:37 [INFO] [stdout] | [INFO] [stdout] 23 | bump_map: Option>>) -> MatteMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/measured.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | bump_map: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/measured.rs:25:48 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(filename: String, b: Option>>) -> MeasuredMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mix.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | scale: Arc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mix.rs:22:24 [INFO] [stdout] | [INFO] [stdout] 22 | sc: Arc>) -> MixMaterial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | k_d: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | k_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | roughness: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:20:26 [INFO] [stdout] | [INFO] [stdout] 20 | bump_map: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | ks: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:26:27 [INFO] [stdout] | [INFO] [stdout] 26 | rough: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:27:31 [INFO] [stdout] | [INFO] [stdout] 27 | bm: Option>>) -> PlasticMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | k_r: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:18:18 [INFO] [stdout] | [INFO] [stdout] 18 | sigma_a: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:19:24 [INFO] [stdout] | [INFO] [stdout] 19 | sigma_prime_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | eta: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | bump_map: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:25:37 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(scale: f32, k_r: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:26:29 [INFO] [stdout] | [INFO] [stdout] 26 | sigma_a: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:27:35 [INFO] [stdout] | [INFO] [stdout] 27 | sigma_prime_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:28:25 [INFO] [stdout] | [INFO] [stdout] 28 | eta: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:29:37 [INFO] [stdout] | [INFO] [stdout] 29 | bump_map: Option>>) -> SubsurfaceMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn matte(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:91:27 [INFO] [stdout] | [INFO] [stdout] 91 | sig: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:92:39 [INFO] [stdout] | [INFO] [stdout] 92 | bump_map: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:96:28 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn plastic(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:97:28 [INFO] [stdout] | [INFO] [stdout] 97 | ks: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:98:31 [INFO] [stdout] | [INFO] [stdout] 98 | rough: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:99:35 [INFO] [stdout] | [INFO] [stdout] 99 | bm: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:103:53 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn measured(filename: String, b: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:108:26 [INFO] [stdout] | [INFO] [stdout] 108 | sc: Arc>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:112:44 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn subsurface(scale: f32, k_r: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:113:36 [INFO] [stdout] | [INFO] [stdout] 113 | sigma_a: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:114:42 [INFO] [stdout] | [INFO] [stdout] 114 | sigma_prime_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:115:32 [INFO] [stdout] | [INFO] [stdout] 115 | eta: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:116:38 [INFO] [stdout] | [INFO] [stdout] 116 | bm: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:264:45 [INFO] [stdout] | [INFO] [stdout] 264 | float_textures: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:265:48 [INFO] [stdout] | [INFO] [stdout] 265 | spectrum_textures: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:270:54 [INFO] [stdout] | [INFO] [stdout] 270 | fn find_texture(textures: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:271:39 [INFO] [stdout] | [INFO] [stdout] 271 | name: &str) -> Arc> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:273:41 [INFO] [stdout] | [INFO] [stdout] 273 | Some(tex) => tex.clone() as Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:280:44 [INFO] [stdout] | [INFO] [stdout] 280 | ft: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:281:44 [INFO] [stdout] | [INFO] [stdout] 281 | st: Arc>>>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:292:40 [INFO] [stdout] | [INFO] [stdout] 292 | ... -> Arc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:296:56 [INFO] [stdout] | [INFO] [stdout] 296 | Arc::new(ConstantTexture::new(val)) as Arc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:301:55 [INFO] [stdout] | [INFO] [stdout] 301 | ... -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:307:37 [INFO] [stdout] | [INFO] [stdout] 307 | ... -> Arc> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:311:56 [INFO] [stdout] | [INFO] [stdout] 311 | Arc::new(ConstantTexture::new(val)) as Arc> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:316:52 [INFO] [stdout] | [INFO] [stdout] 316 | ... -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sampler_renderer.rs:197:47 [INFO] [stdout] | [INFO] [stdout] 197 | let accum = |acc, light: &Arc| acc + light.le(ray); [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/shape/mesh.rs:270:15 [INFO] [stdout] | [INFO] [stdout] 270 | 0 ... 2 => &(self.mesh.p[self.v[i]]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mesh.rs:284:22 [INFO] [stdout] | [INFO] [stdout] 284 | atex: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mesh.rs:301:58 [INFO] [stdout] | [INFO] [stdout] 301 | uv: Option<&[f32]>, _atex: Option>>>) [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mesh.rs:312:50 [INFO] [stdout] | [INFO] [stdout] 312 | atex: _atex.map(|t| t.clone() as Arc>) [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mod.rs:188:48 [INFO] [stdout] | [INFO] [stdout] 188 | _atex: Option>>>) -> Shape { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:631:22 [INFO] [stdout] | [INFO] [stdout] 631 | 0...29 => cs.get(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:638:22 [INFO] [stdout] | [INFO] [stdout] 638 | 0...2 => cs.get(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:651:22 [INFO] [stdout] | [INFO] [stdout] 651 | 0...29 => cs.get_mut(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:658:22 [INFO] [stdout] | [INFO] [stdout] 658 | 0...2 => cs.get_mut(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:17:22 [INFO] [stdout] | [INFO] [stdout] 17 | lights : Vec>, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:18:32 [INFO] [stdout] | [INFO] [stdout] 18 | volume_region : Option>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:33:37 [INFO] [stdout] | [INFO] [stdout] 33 | lights: Vec>, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:34:47 [INFO] [stdout] | [INFO] [stdout] 34 | volume_region: Option>) -> Scene { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:42:37 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn lights(&self) -> Vec> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:18:18 [INFO] [stdout] | [INFO] [stdout] 18 | mapping: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 20 | tex2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:25:56 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | t2: Arc>) -> CheckerboardTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:31:41 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn new_antialiased(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:31:68 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn new_antialiased(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:32:36 [INFO] [stdout] | [INFO] [stdout] 32 | ... t2: Arc>) -> CheckerboardTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:97:18 [INFO] [stdout] | [INFO] [stdout] 97 | mapping: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:98:15 [INFO] [stdout] | [INFO] [stdout] 98 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | tex2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:103:29 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:103:56 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:104:24 [INFO] [stdout] | [INFO] [stdout] 104 | t2: Arc>) -> Checkerboard3DTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mapping2d.rs:27:64 [INFO] [stdout] | [INFO] [stdout] 27 | impl TextureMapping2DBase for U where U: Deref { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mapping3d.rs:20:64 [INFO] [stdout] | [INFO] [stdout] 20 | impl TextureMapping3DBase for U where U: Deref { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | tex2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | amount: Arc> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:16:24 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(t1: Arc>, t2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:16:45 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(t1: Arc>, t2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | amt: Arc>) -> MixTexture { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/bilerp.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | mapping: Arc, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/imagemap.rs:420:18 [INFO] [stdout] | [INFO] [stdout] 420 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/imagemap.rs:510:12 [INFO] [stdout] | [INFO] [stdout] 510 | m: Box, filename: &P, do_trilinear: bool, max_aniso: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/imagemap.rs:521:12 [INFO] [stdout] | [INFO] [stdout] 521 | m: Box, filename: &P, do_trilinear: bool, max_aniso: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/uv.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/uv.rs:15:30 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(_mapping: Box) -> UVTexture { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | mapping: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | inside_dot: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:13:22 [INFO] [stdout] | [INFO] [stdout] 13 | outside_dot: Arc> [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:17:29 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:17:56 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:18:24 [INFO] [stdout] | [INFO] [stdout] 18 | t2: Arc>) -> DotsTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:12:18 [INFO] [stdout] | [INFO] [stdout] 12 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:16:51 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(oct: i32, roughness: f32, map: Box) -> FBmTexture { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:32:18 [INFO] [stdout] | [INFO] [stdout] 32 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:36:51 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(oct: i32, roughness: f32, map: Box) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:27:61 [INFO] [stdout] | [INFO] [stdout] 27 | impl TextureBase for U where U: Deref> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:64:15 [INFO] [stdout] | [INFO] [stdout] 64 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:65:15 [INFO] [stdout] | [INFO] [stdout] 65 | tex2: Arc> [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:69:24 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn new(t1: Arc>, t2: Arc>) -> ScaleTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:69:45 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn new(t1: Arc>, t2: Arc>) -> ScaleTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/matrix4x4.rs:261:15 [INFO] [stdout] | [INFO] [stdout] 261 | 0 ... 3 => &self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/matrix4x4.rs:270:15 [INFO] [stdout] | [INFO] [stdout] 270 | 0 ... 3 => &mut self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/transform.rs:317:15 [INFO] [stdout] | [INFO] [stdout] 317 | 0 ... 3 => &self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/transform.rs:326:15 [INFO] [stdout] | [INFO] [stdout] 326 | 0 ... 3 => &mut self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/volume/aggregate.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | regions: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/volume/aggregate.rs:23:27 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(r: Vec>) -> AggregateVolumeRegion { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/primitive/mod.rs:31:36 [INFO] [stdout] | [INFO] [stdout] 31 | static NEXT_PRIM_ID: AtomicUsize = ::std::sync::atomic::ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/shape/mod.rs:41:37 [INFO] [stdout] | [INFO] [stdout] 41 | static NEXT_SHAPE_ID: AtomicUsize = ::std::sync::atomic::ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/texture/imagemap.rs:410:1 [INFO] [stdout] | [INFO] [stdout] 410 | / lazy_static! { [INFO] [stdout] 411 | | static ref FLOAT_TEXTURES: Mutex> = [INFO] [stdout] 412 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 413 | | static ref SPECTRUM_TEXTURES: Mutex> = [INFO] [stdout] 414 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 415 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/texture/imagemap.rs:410:1 [INFO] [stdout] | [INFO] [stdout] 410 | / lazy_static! { [INFO] [stdout] 411 | | static ref FLOAT_TEXTURES: Mutex> = [INFO] [stdout] 412 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 413 | | static ref SPECTRUM_TEXTURES: Mutex> = [INFO] [stdout] 414 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 415 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bsdf/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / bitflags! { [INFO] [stdout] 23 | | pub flags BxDFType: u32 { [INFO] [stdout] 24 | | const BSDF_REFLECTION = (1 << 0), [INFO] [stdout] 25 | | const BSDF_TRANSMISSION = (1 << 1), [INFO] [stdout] ... | [INFO] [stdout] 37 | | } [INFO] [stdout] 38 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/bsdf/mod.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / bitflags! { [INFO] [stdout] 23 | | pub flags BxDFType: u32 { [INFO] [stdout] 24 | | const BSDF_REFLECTION = (1 << 0), [INFO] [stdout] 25 | | const BSDF_TRANSMISSION = (1 << 1), [INFO] [stdout] ... | [INFO] [stdout] 37 | | } [INFO] [stdout] 38 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bsdf/mod.rs:67:20 [INFO] [stdout] | [INFO] [stdout] 67 | bxdfs: Vec> [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn BxDF` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bsdf/mod.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | bxdf: Box, [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn BxDF` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/bsdf/mod.rs:203:27 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn new(input: Box, sc: Spectrum) -> ScaledBxDF { [INFO] [stdout] | ^^^^ help: use `dyn`: `dyn BxDF` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | sigma: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:16:26 [INFO] [stdout] | [INFO] [stdout] 16 | bump_map: Option>>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | k_d: Arc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:21:24 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | sig: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/matte.rs:23:37 [INFO] [stdout] | [INFO] [stdout] 23 | bump_map: Option>>) -> MatteMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/measured.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | bump_map: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/measured.rs:25:48 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(filename: String, b: Option>>) -> MeasuredMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mix.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | scale: Arc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mix.rs:22:24 [INFO] [stdout] | [INFO] [stdout] 22 | sc: Arc>) -> MixMaterial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | k_d: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | k_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | roughness: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:20:26 [INFO] [stdout] | [INFO] [stdout] 20 | bump_map: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn new(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | ks: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:26:27 [INFO] [stdout] | [INFO] [stdout] 26 | rough: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/plastic.rs:27:31 [INFO] [stdout] | [INFO] [stdout] 27 | bm: Option>>) -> PlasticMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:17:14 [INFO] [stdout] | [INFO] [stdout] 17 | k_r: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:18:18 [INFO] [stdout] | [INFO] [stdout] 18 | sigma_a: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:19:24 [INFO] [stdout] | [INFO] [stdout] 19 | sigma_prime_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | eta: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:21:26 [INFO] [stdout] | [INFO] [stdout] 21 | bump_map: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:25:37 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(scale: f32, k_r: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:26:29 [INFO] [stdout] | [INFO] [stdout] 26 | sigma_a: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:27:35 [INFO] [stdout] | [INFO] [stdout] 27 | sigma_prime_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:28:25 [INFO] [stdout] | [INFO] [stdout] 28 | eta: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/subsurface.rs:29:37 [INFO] [stdout] | [INFO] [stdout] 29 | bump_map: Option>>) -> SubsurfaceMaterial { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn matte(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:91:27 [INFO] [stdout] | [INFO] [stdout] 91 | sig: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:92:39 [INFO] [stdout] | [INFO] [stdout] 92 | bump_map: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:96:28 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn plastic(kd: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:97:28 [INFO] [stdout] | [INFO] [stdout] 97 | ks: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:98:31 [INFO] [stdout] | [INFO] [stdout] 98 | rough: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:99:35 [INFO] [stdout] | [INFO] [stdout] 99 | bm: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:103:53 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn measured(filename: String, b: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:108:26 [INFO] [stdout] | [INFO] [stdout] 108 | sc: Arc>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:112:44 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn subsurface(scale: f32, k_r: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:113:36 [INFO] [stdout] | [INFO] [stdout] 113 | sigma_a: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:114:42 [INFO] [stdout] | [INFO] [stdout] 114 | sigma_prime_s: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:115:32 [INFO] [stdout] | [INFO] [stdout] 115 | eta: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/material/mod.rs:116:38 [INFO] [stdout] | [INFO] [stdout] 116 | bm: Option>>) -> Material { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:264:45 [INFO] [stdout] | [INFO] [stdout] 264 | float_textures: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:265:48 [INFO] [stdout] | [INFO] [stdout] 265 | spectrum_textures: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:270:54 [INFO] [stdout] | [INFO] [stdout] 270 | fn find_texture(textures: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:271:39 [INFO] [stdout] | [INFO] [stdout] 271 | name: &str) -> Arc> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:273:41 [INFO] [stdout] | [INFO] [stdout] 273 | Some(tex) => tex.clone() as Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:280:44 [INFO] [stdout] | [INFO] [stdout] 280 | ft: Arc>>>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:281:44 [INFO] [stdout] | [INFO] [stdout] 281 | st: Arc>>>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:292:40 [INFO] [stdout] | [INFO] [stdout] 292 | ... -> Arc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:296:56 [INFO] [stdout] | [INFO] [stdout] 296 | Arc::new(ConstantTexture::new(val)) as Arc> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:301:55 [INFO] [stdout] | [INFO] [stdout] 301 | ... -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:307:37 [INFO] [stdout] | [INFO] [stdout] 307 | ... -> Arc> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:311:56 [INFO] [stdout] | [INFO] [stdout] 311 | Arc::new(ConstantTexture::new(val)) as Arc> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/params.rs:316:52 [INFO] [stdout] | [INFO] [stdout] 316 | ... -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sampler_renderer.rs:197:47 [INFO] [stdout] | [INFO] [stdout] 197 | let accum = |acc, light: &Arc| acc + light.le(ray); [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/shape/mesh.rs:270:15 [INFO] [stdout] | [INFO] [stdout] 270 | 0 ... 2 => &(self.mesh.p[self.v[i]]), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mesh.rs:284:22 [INFO] [stdout] | [INFO] [stdout] 284 | atex: Option>> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mesh.rs:301:58 [INFO] [stdout] | [INFO] [stdout] 301 | uv: Option<&[f32]>, _atex: Option>>>) [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mesh.rs:312:50 [INFO] [stdout] | [INFO] [stdout] 312 | atex: _atex.map(|t| t.clone() as Arc>) [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shape/mod.rs:188:48 [INFO] [stdout] | [INFO] [stdout] 188 | _atex: Option>>>) -> Shape { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:631:22 [INFO] [stdout] | [INFO] [stdout] 631 | 0...29 => cs.get(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:638:22 [INFO] [stdout] | [INFO] [stdout] 638 | 0...2 => cs.get(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:651:22 [INFO] [stdout] | [INFO] [stdout] 651 | 0...29 => cs.get_mut(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/spectrum.rs:658:22 [INFO] [stdout] | [INFO] [stdout] 658 | 0...2 => cs.get_mut(index).unwrap(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:17:22 [INFO] [stdout] | [INFO] [stdout] 17 | lights : Vec>, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:18:32 [INFO] [stdout] | [INFO] [stdout] 18 | volume_region : Option>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:33:37 [INFO] [stdout] | [INFO] [stdout] 33 | lights: Vec>, [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:34:47 [INFO] [stdout] | [INFO] [stdout] 34 | volume_region: Option>) -> Scene { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/scene.rs:42:37 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn lights(&self) -> Vec> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Light` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:18:18 [INFO] [stdout] | [INFO] [stdout] 18 | mapping: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 20 | tex2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:25:29 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:25:56 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | t2: Arc>) -> CheckerboardTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:31:41 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn new_antialiased(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:31:68 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn new_antialiased(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:32:36 [INFO] [stdout] | [INFO] [stdout] 32 | ... t2: Arc>) -> CheckerboardTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:97:18 [INFO] [stdout] | [INFO] [stdout] 97 | mapping: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:98:15 [INFO] [stdout] | [INFO] [stdout] 98 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | tex2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:103:29 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:103:56 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:104:24 [INFO] [stdout] | [INFO] [stdout] 104 | t2: Arc>) -> Checkerboard3DTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:132:66 [INFO] [stdout] | [INFO] [stdout] 132 | let tex1 = Arc::new(ConstantTexture::new(1.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:133:66 [INFO] [stdout] | [INFO] [stdout] 133 | let tex2 = Arc::new(ConstantTexture::new(0.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:150:66 [INFO] [stdout] | [INFO] [stdout] 150 | let tex1 = Arc::new(ConstantTexture::new(1.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:151:66 [INFO] [stdout] | [INFO] [stdout] 151 | let tex2 = Arc::new(ConstantTexture::new(0.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:171:66 [INFO] [stdout] | [INFO] [stdout] 171 | let tex1 = Arc::new(ConstantTexture::new(1.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/checkerboard.rs:172:66 [INFO] [stdout] | [INFO] [stdout] 172 | let tex2 = Arc::new(ConstantTexture::new(0.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mapping2d.rs:27:64 [INFO] [stdout] | [INFO] [stdout] 27 | impl TextureMapping2DBase for U where U: Deref { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mapping3d.rs:20:64 [INFO] [stdout] | [INFO] [stdout] 20 | impl TextureMapping3DBase for U where U: Deref { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | tex2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | amount: Arc> [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:16:24 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(t1: Arc>, t2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:16:45 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(t1: Arc>, t2: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | amt: Arc>) -> MixTexture { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:38:56 [INFO] [stdout] | [INFO] [stdout] 38 | Vector::new_with(1.0, -2.0, 15.0))) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:40:54 [INFO] [stdout] | [INFO] [stdout] 40 | Vector::new_with(1.0, 2.0, 3.0))) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mix.rs:41:66 [INFO] [stdout] | [INFO] [stdout] 41 | let amt = Arc::new(ConstantTexture::new(0.75f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/bilerp.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | mapping: Arc, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/imagemap.rs:420:18 [INFO] [stdout] | [INFO] [stdout] 420 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/imagemap.rs:510:12 [INFO] [stdout] | [INFO] [stdout] 510 | m: Box, filename: &P, do_trilinear: bool, max_aniso: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/imagemap.rs:521:12 [INFO] [stdout] | [INFO] [stdout] 521 | m: Box, filename: &P, do_trilinear: bool, max_aniso: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/uv.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/uv.rs:15:30 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(_mapping: Box) -> UVTexture { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | mapping: Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | inside_dot: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:13:22 [INFO] [stdout] | [INFO] [stdout] 13 | outside_dot: Arc> [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:17:29 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping2D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:17:56 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn new(mapping: Box, t1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/dots.rs:18:24 [INFO] [stdout] | [INFO] [stdout] 18 | t2: Arc>) -> DotsTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:12:18 [INFO] [stdout] | [INFO] [stdout] 12 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:16:51 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(oct: i32, roughness: f32, map: Box) -> FBmTexture { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:32:18 [INFO] [stdout] | [INFO] [stdout] 32 | mapping: Box [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/fbm.rs:36:51 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(oct: i32, roughness: f32, map: Box) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn TextureMapping3D` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:27:61 [INFO] [stdout] | [INFO] [stdout] 27 | impl TextureBase for U where U: Deref> { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:64:15 [INFO] [stdout] | [INFO] [stdout] 64 | tex1: Arc>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:65:15 [INFO] [stdout] | [INFO] [stdout] 65 | tex2: Arc> [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:69:24 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn new(t1: Arc>, t2: Arc>) -> ScaleTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:69:45 [INFO] [stdout] | [INFO] [stdout] 69 | pub fn new(t1: Arc>, t2: Arc>) -> ScaleTexture { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:94:66 [INFO] [stdout] | [INFO] [stdout] 94 | let tex1 = Arc::new(ConstantTexture::new(2.0f32)) as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/texture/mod.rs:96:20 [INFO] [stdout] | [INFO] [stdout] 96 | as Arc>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Texture` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/matrix4x4.rs:261:15 [INFO] [stdout] | [INFO] [stdout] 261 | 0 ... 3 => &self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/matrix4x4.rs:270:15 [INFO] [stdout] | [INFO] [stdout] 270 | 0 ... 3 => &mut self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/transform.rs:317:15 [INFO] [stdout] | [INFO] [stdout] 317 | 0 ... 3 => &self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/transform/transform.rs:326:15 [INFO] [stdout] | [INFO] [stdout] 326 | 0 ... 3 => &mut self.m[i], [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/volume/aggregate.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | regions: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/volume/aggregate.rs:23:27 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(r: Vec>) -> AggregateVolumeRegion { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn VolumeRegion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/bsdf/measured.rs:169:90 [INFO] [stdout] | [INFO] [stdout] 169 | let remap = |v: f32, mx: f32, cnt: usize| { (((v / mx) * (cnt as f32)) as usize).clamp(0, cnt - 1) }; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 169 | let remap = |v: f32, mx: f32, cnt: usize| { Clamp::clamp((((v / mx) * (cnt as f32)) as usize), 0, cnt - 1) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 169 | let remap = |v: f32, mx: f32, cnt: usize| { Ord::clamp((((v / mx) * (cnt as f32)) as usize), 0, cnt - 1) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/primitive/mod.rs:31:36 [INFO] [stdout] | [INFO] [stdout] 31 | static NEXT_PRIM_ID: AtomicUsize = ::std::sync::atomic::ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/shape/mod.rs:41:37 [INFO] [stdout] | [INFO] [stdout] 41 | static NEXT_SHAPE_ID: AtomicUsize = ::std::sync::atomic::ATOMIC_USIZE_INIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicUsize::new(0)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/texture/imagemap.rs:410:1 [INFO] [stdout] | [INFO] [stdout] 410 | / lazy_static! { [INFO] [stdout] 411 | | static ref FLOAT_TEXTURES: Mutex> = [INFO] [stdout] 412 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 413 | | static ref SPECTRUM_TEXTURES: Mutex> = [INFO] [stdout] 414 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 415 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/texture/imagemap.rs:410:1 [INFO] [stdout] | [INFO] [stdout] 410 | / lazy_static! { [INFO] [stdout] 411 | | static ref FLOAT_TEXTURES: Mutex> = [INFO] [stdout] 412 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 413 | | static ref SPECTRUM_TEXTURES: Mutex> = [INFO] [stdout] 414 | | Mutex::new(TextureCache::new()); [INFO] [stdout] 415 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:115:58 [INFO] [stdout] | [INFO] [stdout] 115 | ((delta[0] * voxels_per_unit_dist) as usize).clamp(1, 64), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 115 | Clamp::clamp(((delta[0] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 115 | Ord::clamp(((delta[0] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:116:58 [INFO] [stdout] | [INFO] [stdout] 116 | ((delta[1] * voxels_per_unit_dist) as usize).clamp(1, 64), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 116 | Clamp::clamp(((delta[1] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 116 | Ord::clamp(((delta[1] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:117:58 [INFO] [stdout] | [INFO] [stdout] 117 | ((delta[2] * voxels_per_unit_dist) as usize).clamp(1, 64)]; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 117 | Clamp::clamp(((delta[2] * voxels_per_unit_dist) as usize), 1, 64)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 117 | Ord::clamp(((delta[2] * voxels_per_unit_dist) as usize), 1, 64)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:190:14 [INFO] [stdout] | [INFO] [stdout] 190 | .clamp(0, self.num_voxels[axis] - 1) [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 189 | Clamp::clamp((((p[axis] - self.bounds.p_min[axis]) * self.inv_width[axis]) as usize), 0, self.num_voxels[axis] - 1) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 189 | Ord::clamp((((p[axis] - self.bounds.p_min[axis]) * self.inv_width[axis]) as usize), 0, self.num_voxels[axis] - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/bsdf/measured.rs:169:90 [INFO] [stdout] | [INFO] [stdout] 169 | let remap = |v: f32, mx: f32, cnt: usize| { (((v / mx) * (cnt as f32)) as usize).clamp(0, cnt - 1) }; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 169 | let remap = |v: f32, mx: f32, cnt: usize| { utils::Clamp::clamp((((v / mx) * (cnt as f32)) as usize), 0, cnt - 1) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 169 | let remap = |v: f32, mx: f32, cnt: usize| { Ord::clamp((((v / mx) * (cnt as f32)) as usize), 0, cnt - 1) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:86:36 [INFO] [stdout] | [INFO] [stdout] 86 | ImageWrap::Clamp => ft.clamp(0, (dim-1) as i32), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 86 | ImageWrap::Clamp => Clamp::clamp(ft, 0, (dim-1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 86 | ImageWrap::Clamp => Ord::clamp(ft, 0, (dim-1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | ImageWrap::Clamp => (_s.clamp(0, (level.width() - 1) as i32), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 149 | ImageWrap::Clamp => (Clamp::clamp(_s, 0, (level.width() - 1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 149 | ImageWrap::Clamp => (Ord::clamp(_s, 0, (level.width() - 1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:150:33 [INFO] [stdout] | [INFO] [stdout] 150 | ... _t.clamp(0, (level.height() - 1) as i32)), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 150 | Clamp::clamp(_t, 0, (level.height() - 1) as i32)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 150 | Ord::clamp(_t, 0, (level.height() - 1) as i32)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:241:28 [INFO] [stdout] | [INFO] [stdout] 241 | let level = _level.clamp(0, self.levels() - 1); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 241 | let level = Clamp::clamp(_level, 0, self.levels() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 241 | let level = Ord::clamp(_level, 0, self.levels() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:115:58 [INFO] [stdout] | [INFO] [stdout] 115 | ((delta[0] * voxels_per_unit_dist) as usize).clamp(1, 64), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 115 | utils::Clamp::clamp(((delta[0] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 115 | Ord::clamp(((delta[0] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:116:58 [INFO] [stdout] | [INFO] [stdout] 116 | ((delta[1] * voxels_per_unit_dist) as usize).clamp(1, 64), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 116 | utils::Clamp::clamp(((delta[1] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 116 | Ord::clamp(((delta[1] * voxels_per_unit_dist) as usize), 1, 64), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:117:58 [INFO] [stdout] | [INFO] [stdout] 117 | ((delta[2] * voxels_per_unit_dist) as usize).clamp(1, 64)]; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 117 | utils::Clamp::clamp(((delta[2] * voxels_per_unit_dist) as usize), 1, 64)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 117 | Ord::clamp(((delta[2] * voxels_per_unit_dist) as usize), 1, 64)]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/volume/density/volume_grid.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | let x = _x.clamp(0, (self.nx - 1) as i32) as usize; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 47 | let x = Clamp::clamp(_x, 0, (self.nx - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 47 | let x = Ord::clamp(_x, 0, (self.nx - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/volume/density/volume_grid.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 48 | let y = _y.clamp(0, (self.ny - 1) as i32) as usize; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 48 | let y = Clamp::clamp(_y, 0, (self.ny - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 48 | let y = Ord::clamp(_y, 0, (self.ny - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/primitive/aggregates/grid.rs:190:14 [INFO] [stdout] | [INFO] [stdout] 190 | .clamp(0, self.num_voxels[axis] - 1) [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 189 | utils::Clamp::clamp((((p[axis] - self.bounds.p_min[axis]) * self.inv_width[axis]) as usize), 0, self.num_voxels[axis] - 1) [INFO] [stdout] | [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 189 | Ord::clamp((((p[axis] - self.bounds.p_min[axis]) * self.inv_width[axis]) as usize), 0, self.num_voxels[axis] - 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/volume/density/volume_grid.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | let z = _z.clamp(0, (self.nz - 1) as i32) as usize; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 49 | let z = Clamp::clamp(_z, 0, (self.nz - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 49 | let z = Ord::clamp(_z, 0, (self.nz - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 12 previous errors; 129 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0034`. [INFO] [stdout] [INFO] [stderr] error: could not compile `pbrt_rust` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:86:36 [INFO] [stdout] | [INFO] [stdout] 86 | ImageWrap::Clamp => ft.clamp(0, (dim-1) as i32), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 86 | ImageWrap::Clamp => utils::Clamp::clamp(ft, 0, (dim-1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 86 | ImageWrap::Clamp => Ord::clamp(ft, 0, (dim-1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:149:33 [INFO] [stdout] | [INFO] [stdout] 149 | ImageWrap::Clamp => (_s.clamp(0, (level.width() - 1) as i32), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 149 | ImageWrap::Clamp => (utils::Clamp::clamp(_s, 0, (level.width() - 1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 149 | ImageWrap::Clamp => (Ord::clamp(_s, 0, (level.width() - 1) as i32), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:150:33 [INFO] [stdout] | [INFO] [stdout] 150 | ... _t.clamp(0, (level.height() - 1) as i32)), [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 150 | utils::Clamp::clamp(_t, 0, (level.height() - 1) as i32)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 150 | Ord::clamp(_t, 0, (level.height() - 1) as i32)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/texture/imagemap.rs:241:28 [INFO] [stdout] | [INFO] [stdout] 241 | let level = _level.clamp(0, self.levels() - 1); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `usize` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 241 | let level = utils::Clamp::clamp(_level, 0, self.levels() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 241 | let level = Ord::clamp(_level, 0, self.levels() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:302:24 [INFO] [stdout] | [INFO] [stdout] 302 | assert_eq!(0i8.clamp(1i8, 2i8), 1i8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 302 | assert_eq!(utils::Clamp::clamp(0i8, 1i8, 2i8), 1i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 302 | assert_eq!(Ord::clamp(0i8, 1i8, 2i8), 1i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:303:24 [INFO] [stdout] | [INFO] [stdout] 303 | assert_eq!(1i8.clamp(1i8, 2i8), 1i8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 303 | assert_eq!(utils::Clamp::clamp(1i8, 1i8, 2i8), 1i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 303 | assert_eq!(Ord::clamp(1i8, 1i8, 2i8), 1i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:304:24 [INFO] [stdout] | [INFO] [stdout] 304 | assert_eq!(2i8.clamp(1i8, 3i8), 2i8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 304 | assert_eq!(utils::Clamp::clamp(2i8, 1i8, 3i8), 2i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 304 | assert_eq!(Ord::clamp(2i8, 1i8, 3i8), 2i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:305:24 [INFO] [stdout] | [INFO] [stdout] 305 | assert_eq!(2i8.clamp(1i8, 2i8), 2i8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 305 | assert_eq!(utils::Clamp::clamp(2i8, 1i8, 2i8), 2i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 305 | assert_eq!(Ord::clamp(2i8, 1i8, 2i8), 2i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:306:24 [INFO] [stdout] | [INFO] [stdout] 306 | assert_eq!(3i8.clamp(1i8, 2i8), 2i8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 306 | assert_eq!(utils::Clamp::clamp(3i8, 1i8, 2i8), 2i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 306 | assert_eq!(Ord::clamp(3i8, 1i8, 2i8), 2i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:308:25 [INFO] [stdout] | [INFO] [stdout] 308 | assert_eq!(0i16.clamp(1i16, 2i16), 1i16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 308 | assert_eq!(utils::Clamp::clamp(0i16, 1i16, 2i16), 1i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 308 | assert_eq!(Ord::clamp(0i16, 1i16, 2i16), 1i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:309:25 [INFO] [stdout] | [INFO] [stdout] 309 | assert_eq!(1i16.clamp(1i16, 2i16), 1i16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 309 | assert_eq!(utils::Clamp::clamp(1i16, 1i16, 2i16), 1i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 309 | assert_eq!(Ord::clamp(1i16, 1i16, 2i16), 1i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:310:25 [INFO] [stdout] | [INFO] [stdout] 310 | assert_eq!(2i16.clamp(1i16, 3i16), 2i16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 310 | assert_eq!(utils::Clamp::clamp(2i16, 1i16, 3i16), 2i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 310 | assert_eq!(Ord::clamp(2i16, 1i16, 3i16), 2i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:311:25 [INFO] [stdout] | [INFO] [stdout] 311 | assert_eq!(2i16.clamp(1i16, 2i16), 2i16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 311 | assert_eq!(utils::Clamp::clamp(2i16, 1i16, 2i16), 2i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 311 | assert_eq!(Ord::clamp(2i16, 1i16, 2i16), 2i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:312:25 [INFO] [stdout] | [INFO] [stdout] 312 | assert_eq!(3i16.clamp(1i16, 2i16), 2i16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 312 | assert_eq!(utils::Clamp::clamp(3i16, 1i16, 2i16), 2i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 312 | assert_eq!(Ord::clamp(3i16, 1i16, 2i16), 2i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:314:25 [INFO] [stdout] | [INFO] [stdout] 314 | assert_eq!(0i32.clamp(1i32, 2i32), 1i32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 314 | assert_eq!(utils::Clamp::clamp(0i32, 1i32, 2i32), 1i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 314 | assert_eq!(Ord::clamp(0i32, 1i32, 2i32), 1i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:315:25 [INFO] [stdout] | [INFO] [stdout] 315 | assert_eq!(1i32.clamp(1i32, 2i32), 1i32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 315 | assert_eq!(utils::Clamp::clamp(1i32, 1i32, 2i32), 1i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 315 | assert_eq!(Ord::clamp(1i32, 1i32, 2i32), 1i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:316:25 [INFO] [stdout] | [INFO] [stdout] 316 | assert_eq!(2i32.clamp(1i32, 3i32), 2i32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 316 | assert_eq!(utils::Clamp::clamp(2i32, 1i32, 3i32), 2i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 316 | assert_eq!(Ord::clamp(2i32, 1i32, 3i32), 2i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:317:25 [INFO] [stdout] | [INFO] [stdout] 317 | assert_eq!(2i32.clamp(1i32, 2i32), 2i32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 317 | assert_eq!(utils::Clamp::clamp(2i32, 1i32, 2i32), 2i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 317 | assert_eq!(Ord::clamp(2i32, 1i32, 2i32), 2i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:318:25 [INFO] [stdout] | [INFO] [stdout] 318 | assert_eq!(3i32.clamp(1i32, 2i32), 2i32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 318 | assert_eq!(utils::Clamp::clamp(3i32, 1i32, 2i32), 2i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 318 | assert_eq!(Ord::clamp(3i32, 1i32, 2i32), 2i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:320:25 [INFO] [stdout] | [INFO] [stdout] 320 | assert_eq!(0i64.clamp(1i64, 2i64), 1i64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 320 | assert_eq!(utils::Clamp::clamp(0i64, 1i64, 2i64), 1i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 320 | assert_eq!(Ord::clamp(0i64, 1i64, 2i64), 1i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:321:25 [INFO] [stdout] | [INFO] [stdout] 321 | assert_eq!(1i64.clamp(1i64, 2i64), 1i64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 321 | assert_eq!(utils::Clamp::clamp(1i64, 1i64, 2i64), 1i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 321 | assert_eq!(Ord::clamp(1i64, 1i64, 2i64), 1i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:322:25 [INFO] [stdout] | [INFO] [stdout] 322 | assert_eq!(2i64.clamp(1i64, 3i64), 2i64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 322 | assert_eq!(utils::Clamp::clamp(2i64, 1i64, 3i64), 2i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 322 | assert_eq!(Ord::clamp(2i64, 1i64, 3i64), 2i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:323:25 [INFO] [stdout] | [INFO] [stdout] 323 | assert_eq!(2i64.clamp(1i64, 2i64), 2i64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 323 | assert_eq!(utils::Clamp::clamp(2i64, 1i64, 2i64), 2i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 323 | assert_eq!(Ord::clamp(2i64, 1i64, 2i64), 2i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:324:25 [INFO] [stdout] | [INFO] [stdout] 324 | assert_eq!(3i64.clamp(1i64, 2i64), 2i64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 324 | assert_eq!(utils::Clamp::clamp(3i64, 1i64, 2i64), 2i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 324 | assert_eq!(Ord::clamp(3i64, 1i64, 2i64), 2i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:326:24 [INFO] [stdout] | [INFO] [stdout] 326 | assert_eq!(0u8.clamp(1u8, 2u8), 1u8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 326 | assert_eq!(utils::Clamp::clamp(0u8, 1u8, 2u8), 1u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 326 | assert_eq!(Ord::clamp(0u8, 1u8, 2u8), 1u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:327:24 [INFO] [stdout] | [INFO] [stdout] 327 | assert_eq!(1u8.clamp(1u8, 2u8), 1u8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 327 | assert_eq!(utils::Clamp::clamp(1u8, 1u8, 2u8), 1u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 327 | assert_eq!(Ord::clamp(1u8, 1u8, 2u8), 1u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:328:24 [INFO] [stdout] | [INFO] [stdout] 328 | assert_eq!(2u8.clamp(1u8, 3u8), 2u8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 328 | assert_eq!(utils::Clamp::clamp(2u8, 1u8, 3u8), 2u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 328 | assert_eq!(Ord::clamp(2u8, 1u8, 3u8), 2u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:329:24 [INFO] [stdout] | [INFO] [stdout] 329 | assert_eq!(2u8.clamp(1u8, 2u8), 2u8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 329 | assert_eq!(utils::Clamp::clamp(2u8, 1u8, 2u8), 2u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 329 | assert_eq!(Ord::clamp(2u8, 1u8, 2u8), 2u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:330:24 [INFO] [stdout] | [INFO] [stdout] 330 | assert_eq!(3u8.clamp(1u8, 2u8), 2u8); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u8` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 330 | assert_eq!(utils::Clamp::clamp(3u8, 1u8, 2u8), 2u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 330 | assert_eq!(Ord::clamp(3u8, 1u8, 2u8), 2u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:332:25 [INFO] [stdout] | [INFO] [stdout] 332 | assert_eq!(0u16.clamp(1u16, 2u16), 1u16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 332 | assert_eq!(utils::Clamp::clamp(0u16, 1u16, 2u16), 1u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 332 | assert_eq!(Ord::clamp(0u16, 1u16, 2u16), 1u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:333:25 [INFO] [stdout] | [INFO] [stdout] 333 | assert_eq!(1u16.clamp(1u16, 2u16), 1u16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 333 | assert_eq!(utils::Clamp::clamp(1u16, 1u16, 2u16), 1u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 333 | assert_eq!(Ord::clamp(1u16, 1u16, 2u16), 1u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:334:25 [INFO] [stdout] | [INFO] [stdout] 334 | assert_eq!(2u16.clamp(1u16, 3u16), 2u16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 334 | assert_eq!(utils::Clamp::clamp(2u16, 1u16, 3u16), 2u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 334 | assert_eq!(Ord::clamp(2u16, 1u16, 3u16), 2u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:335:25 [INFO] [stdout] | [INFO] [stdout] 335 | assert_eq!(2u16.clamp(1u16, 2u16), 2u16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 335 | assert_eq!(utils::Clamp::clamp(2u16, 1u16, 2u16), 2u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 335 | assert_eq!(Ord::clamp(2u16, 1u16, 2u16), 2u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:336:25 [INFO] [stdout] | [INFO] [stdout] 336 | assert_eq!(3u16.clamp(1u16, 2u16), 2u16); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u16` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 336 | assert_eq!(utils::Clamp::clamp(3u16, 1u16, 2u16), 2u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 336 | assert_eq!(Ord::clamp(3u16, 1u16, 2u16), 2u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:338:25 [INFO] [stdout] | [INFO] [stdout] 338 | assert_eq!(0u32.clamp(1u32, 2u32), 1u32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 338 | assert_eq!(utils::Clamp::clamp(0u32, 1u32, 2u32), 1u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 338 | assert_eq!(Ord::clamp(0u32, 1u32, 2u32), 1u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:339:25 [INFO] [stdout] | [INFO] [stdout] 339 | assert_eq!(1u32.clamp(1u32, 2u32), 1u32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 339 | assert_eq!(utils::Clamp::clamp(1u32, 1u32, 2u32), 1u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 339 | assert_eq!(Ord::clamp(1u32, 1u32, 2u32), 1u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:340:25 [INFO] [stdout] | [INFO] [stdout] 340 | assert_eq!(2u32.clamp(1u32, 3u32), 2u32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 340 | assert_eq!(utils::Clamp::clamp(2u32, 1u32, 3u32), 2u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 340 | assert_eq!(Ord::clamp(2u32, 1u32, 3u32), 2u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:341:25 [INFO] [stdout] | [INFO] [stdout] 341 | assert_eq!(2u32.clamp(1u32, 2u32), 2u32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 341 | assert_eq!(utils::Clamp::clamp(2u32, 1u32, 2u32), 2u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 341 | assert_eq!(Ord::clamp(2u32, 1u32, 2u32), 2u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:342:25 [INFO] [stdout] | [INFO] [stdout] 342 | assert_eq!(3u32.clamp(1u32, 2u32), 2u32); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 342 | assert_eq!(utils::Clamp::clamp(3u32, 1u32, 2u32), 2u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 342 | assert_eq!(Ord::clamp(3u32, 1u32, 2u32), 2u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:344:25 [INFO] [stdout] | [INFO] [stdout] 344 | assert_eq!(0u64.clamp(1u64, 2u64), 1u64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 344 | assert_eq!(utils::Clamp::clamp(0u64, 1u64, 2u64), 1u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 344 | assert_eq!(Ord::clamp(0u64, 1u64, 2u64), 1u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:345:25 [INFO] [stdout] | [INFO] [stdout] 345 | assert_eq!(1u64.clamp(1u64, 2u64), 1u64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 345 | assert_eq!(utils::Clamp::clamp(1u64, 1u64, 2u64), 1u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 345 | assert_eq!(Ord::clamp(1u64, 1u64, 2u64), 1u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | assert_eq!(2u64.clamp(1u64, 3u64), 2u64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 346 | assert_eq!(utils::Clamp::clamp(2u64, 1u64, 3u64), 2u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 346 | assert_eq!(Ord::clamp(2u64, 1u64, 3u64), 2u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:347:25 [INFO] [stdout] | [INFO] [stdout] 347 | assert_eq!(2u64.clamp(1u64, 2u64), 2u64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 347 | assert_eq!(utils::Clamp::clamp(2u64, 1u64, 2u64), 2u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 347 | assert_eq!(Ord::clamp(2u64, 1u64, 2u64), 2u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/utils/mod.rs:348:25 [INFO] [stdout] | [INFO] [stdout] 348 | assert_eq!(3u64.clamp(1u64, 2u64), 2u64); [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `u64` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 348 | assert_eq!(utils::Clamp::clamp(3u64, 1u64, 2u64), 2u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 348 | assert_eq!(Ord::clamp(3u64, 1u64, 2u64), 2u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/volume/density/volume_grid.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | let x = _x.clamp(0, (self.nx - 1) as i32) as usize; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 47 | let x = utils::Clamp::clamp(_x, 0, (self.nx - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 47 | let x = Ord::clamp(_x, 0, (self.nx - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/volume/density/volume_grid.rs:48:20 [INFO] [stdout] | [INFO] [stdout] 48 | let y = _y.clamp(0, (self.ny - 1) as i32) as usize; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 48 | let y = utils::Clamp::clamp(_y, 0, (self.ny - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 48 | let y = Ord::clamp(_y, 0, (self.ny - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0034]: multiple applicable items in scope [INFO] [stdout] --> src/volume/density/volume_grid.rs:49:20 [INFO] [stdout] | [INFO] [stdout] 49 | let z = _z.clamp(0, (self.nz - 1) as i32) as usize; [INFO] [stdout] | ^^^^^ multiple `clamp` found [INFO] [stdout] | [INFO] [stdout] note: candidate #1 is defined in an impl of the trait `utils::Clamp` for the type `T` [INFO] [stdout] --> src/utils/mod.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | fn clamp(self, a: Self, b: Self) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: candidate #2 is defined in an impl of the trait `Ord` for the type `i32` [INFO] [stdout] help: disambiguate the associated function for candidate #1 [INFO] [stdout] | [INFO] [stdout] 49 | let z = utils::Clamp::clamp(_z, 0, (self.nz - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: disambiguate the associated function for candidate #2 [INFO] [stdout] | [INFO] [stdout] 49 | let z = Ord::clamp(_z, 0, (self.nz - 1) as i32) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 52 previous errors; 140 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0034`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "8980c0e69f6d8ff5fe04b7ef46961ff2d13f13ec435d3944a70e1ed09ef1e79f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8980c0e69f6d8ff5fe04b7ef46961ff2d13f13ec435d3944a70e1ed09ef1e79f", kill_on_drop: false }` [INFO] [stdout] 8980c0e69f6d8ff5fe04b7ef46961ff2d13f13ec435d3944a70e1ed09ef1e79f