[INFO] cloning repository https://github.com/leonardlorenz/rosengarten [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/leonardlorenz/rosengarten" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleonardlorenz%2Frosengarten", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleonardlorenz%2Frosengarten'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2faaa330f344e1c04d8e7b9df2457a5077078e8b [INFO] checking leonardlorenz/rosengarten against master#506512391b1a75ae450d36c9420978402a91abcc for pr-125384 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleonardlorenz%2Frosengarten" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/leonardlorenz/rosengarten on toolchain 506512391b1a75ae450d36c9420978402a91abcc [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/leonardlorenz/rosengarten [INFO] finished tweaking git repo https://github.com/leonardlorenz/rosengarten [INFO] tweaked toml for git repo https://github.com/leonardlorenz/rosengarten written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/leonardlorenz/rosengarten already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e0e49087b1b311ca40bc2e23209b44d4695fe9741a401d548fe360f165fcf189 [INFO] running `Command { std: "docker" "start" "-a" "e0e49087b1b311ca40bc2e23209b44d4695fe9741a401d548fe360f165fcf189", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e0e49087b1b311ca40bc2e23209b44d4695fe9741a401d548fe360f165fcf189", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e0e49087b1b311ca40bc2e23209b44d4695fe9741a401d548fe360f165fcf189", kill_on_drop: false }` [INFO] [stdout] e0e49087b1b311ca40bc2e23209b44d4695fe9741a401d548fe360f165fcf189 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=allow" "-e" "RUSTDOCFLAGS=--cap-lints=allow" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+506512391b1a75ae450d36c9420978402a91abcc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0c29efb4382999c7ab42fd561213a51b3521a7067aeb9c006cccdeb2109db2b9 [INFO] running `Command { std: "docker" "start" "-a" "0c29efb4382999c7ab42fd561213a51b3521a7067aeb9c006cccdeb2109db2b9", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling libc v0.2.65 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Checking nodrop v0.1.14 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Checking crossbeam-utils v0.6.6 [INFO] [stderr] Checking scopeguard v1.0.0 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling num-bigint v0.2.3 [INFO] [stderr] Compiling getrandom v0.1.12 [INFO] [stderr] Compiling rayon-core v1.6.0 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Checking num_cpus v1.10.1 [INFO] [stderr] Checking crossbeam-queue v0.1.2 [INFO] [stderr] Compiling num-rational v0.2.2 [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling crc32fast v1.2.0 [INFO] [stderr] Checking crossbeam-epoch v0.7.2 [INFO] [stderr] Checking adler32 v1.0.4 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling num-complex v0.2.3 [INFO] [stderr] Checking ppv-lite86 v0.2.5 [INFO] [stderr] Checking crossbeam-deque v0.7.1 [INFO] [stderr] Checking lzw v0.10.0 [INFO] [stderr] Checking either v1.5.3 [INFO] [stderr] Compiling matrixmultiply v0.1.15 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking deflate v0.7.20 [INFO] [stderr] Checking inflate v0.4.5 [INFO] [stderr] Checking color_quant v1.0.1 [INFO] [stderr] Checking rawpointer v0.1.0 [INFO] [stderr] Checking c2-chacha v0.2.2 [INFO] [stderr] Checking gif v0.10.3 [INFO] [stderr] Checking num v0.1.42 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking rayon v1.2.0 [INFO] [stderr] Checking scoped_threadpool v0.1.9 [INFO] [stderr] Checking png v0.15.0 [INFO] [stderr] Checking rulinalg v0.4.2 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Checking num v0.2.0 [INFO] [stderr] Checking jpeg-decoder v0.1.16 [INFO] [stderr] Checking tiff v0.3.1 [INFO] [stderr] Checking image v0.22.3 [INFO] [stderr] Checking rosengarten v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | transformation.trans_mat = matrix; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | transformation.trans_mat = matrix; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | transformation.trans_mat_inv = matrix [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | transformation.trans_mat_transposed = matrix [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | transformation.trans_mat_inv = matrix [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | transformation.trans_mat_inv_transposed = matrix [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | transformation.trans_mat_transposed = matrix [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/shapes/group.rs:17:23 [INFO] [stdout] | [INFO] [stdout] 17 | let ray_dir = transformation.trans_mat_inv * ray.norm_dir; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/transformation.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | transformation.trans_mat_inv_transposed = matrix [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/shapes/group.rs:18:26 [INFO] [stdout] | [INFO] [stdout] 18 | let ray_origin = transformation.trans_mat_inv * ray.origin; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/shapes/group.rs:17:23 [INFO] [stdout] | [INFO] [stdout] 17 | let ray_dir = transformation.trans_mat_inv * ray.norm_dir; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `transformation` in this scope [INFO] [stdout] --> src/raytracer/shapes/group.rs:18:26 [INFO] [stdout] | [INFO] [stdout] 18 | let ray_origin = transformation.trans_mat_inv * ray.origin; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:66:20 [INFO] [stdout] | [INFO] [stdout] 66 | fn init_scene() -> Group<'static, Shape> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:66:20 [INFO] [stdout] | [INFO] [stdout] 66 | fn init_scene() -> Group<'static, Shape> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `u32: Pixel` is not satisfied [INFO] [stdout] --> src/raytracer/raytracer.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | img: image::ImageBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Pixel` is not implemented for `u32` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Pixel`: [INFO] [stdout] Bgr [INFO] [stdout] Bgra [INFO] [stdout] Luma [INFO] [stdout] LumaA [INFO] [stdout] Rgb [INFO] [stdout] Rgba [INFO] [stdout] note: required by a bound in `ImageBuffer` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/image-0.22.3/./src/buffer.rs:500:27 [INFO] [stdout] | [INFO] [stdout] 500 | pub struct ImageBuffer { [INFO] [stdout] | ^^^^^ required by this bound in `ImageBuffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/raytracer/shapes/group.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | impl Shape for Group<'_, Shape> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `u32: Pixel` is not satisfied [INFO] [stdout] --> src/raytracer/raytracer.rs:14:14 [INFO] [stdout] | [INFO] [stdout] 14 | img: image::ImageBuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Pixel` is not implemented for `u32` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Pixel`: [INFO] [stdout] Bgr [INFO] [stdout] Bgra [INFO] [stdout] Luma [INFO] [stdout] LumaA [INFO] [stdout] Rgb [INFO] [stdout] Rgba [INFO] [stdout] note: required by a bound in `ImageBuffer` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/image-0.22.3/./src/buffer.rs:500:27 [INFO] [stdout] | [INFO] [stdout] 500 | pub struct ImageBuffer { [INFO] [stdout] | ^^^^^ required by this bound in `ImageBuffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/raytracer/shapes/group.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | impl Shape for Group<'_, Shape> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0050]: method `intersect` has 2 parameters but the declaration in trait `Shape::intersect` has 1 [INFO] [stdout] --> src/raytracer/shapes/group.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | fn intersect(&self, ray: Ray) -> Intersection { [INFO] [stdout] | ^^^^^^^^^^^^^^^ expected 1 parameter, found 2 [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:8:18 [INFO] [stdout] | [INFO] [stdout] 8 | fn intersect(&self); [INFO] [stdout] | ----- trait requires 1 parameter [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0050]: method `intersect` has 2 parameters but the declaration in trait `Shape::intersect` has 1 [INFO] [stdout] --> src/raytracer/shapes/group.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | fn intersect(&self, ray: Ray) -> Intersection { [INFO] [stdout] | ^^^^^^^^^^^^^^^ expected 1 parameter, found 2 [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:8:18 [INFO] [stdout] | [INFO] [stdout] 8 | fn intersect(&self); [INFO] [stdout] | ----- trait requires 1 parameter [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0046]: not all trait items implemented, missing: `new` [INFO] [stdout] --> src/raytracer/shapes/group.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | impl Shape for Group<'_, Shape> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `new` in implementation [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | fn new(&self); [INFO] [stdout] | -------------- `new` from trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/raytracer/shapes/group.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | fn intersect(&self, ray: Ray) -> Intersection { [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0050]: method `new` has 4 parameters but the declaration in trait `Shape::new` has 1 [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Shape { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter, found 4 [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | fn new(&self); [INFO] [stdout] | ----- trait requires 1 parameter [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0186]: method `intersect` has a `&self` declaration in the trait, but not in the impl [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | fn intersect(ray: Ray) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ expected `&self` in impl [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | fn intersect(&self); [INFO] [stdout] | -------------------- `&self` used in trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0046]: not all trait items implemented, missing: `new` [INFO] [stdout] --> src/raytracer/shapes/group.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | impl Shape for Group<'_, Shape> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `new` in implementation [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | fn new(&self); [INFO] [stdout] | -------------- `new` from trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/raytracer/shapes/group.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | fn intersect(&self, ray: Ray) -> Intersection { [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0050]: method `new` has 4 parameters but the declaration in trait `Shape::new` has 1 [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Shape { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 1 parameter, found 4 [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | fn new(&self); [INFO] [stdout] | ----- trait requires 1 parameter [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0186]: method `intersect` has a `&self` declaration in the trait, but not in the impl [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | fn intersect(ray: Ray) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ expected `&self` in impl [INFO] [stdout] | [INFO] [stdout] ::: src/raytracer/shapes/shape.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | fn intersect(&self); [INFO] [stdout] | -------------------- `&self` used in trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0010]: allocations are not allowed in constants [INFO] [stdout] --> src/main.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | const ORIGIN: Vec = vec![0, 0, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^ allocation not allowed in constants [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `std::slice::::into_vec::` in constants [INFO] [stdout] --> src/main.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | const ORIGIN: Vec = vec![0, 0, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constants are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0010]: allocations are not allowed in constants [INFO] [stdout] --> src/main.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | const ORIGIN: Vec = vec![0, 0, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^ allocation not allowed in constants [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `std::slice::::into_vec::` in constants [INFO] [stdout] --> src/main.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | const ORIGIN: Vec = vec![0, 0, 0]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constants are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `enumerate_pixels_mut` exists for struct `ImageBuffer`, but its trait bounds were not satisfied [INFO] [stdout] --> src/raytracer/raytracer.rs:16:34 [INFO] [stdout] | [INFO] [stdout] 16 | for (x, y, pixel) in img.enumerate_pixels_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ method cannot be called on `ImageBuffer` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `u32: Pixel` [INFO] [stdout] `u32: Deref` [INFO] [stdout] `u32: DerefMut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `enumerate_pixels_mut` exists for struct `ImageBuffer`, but its trait bounds were not satisfied [INFO] [stdout] --> src/raytracer/raytracer.rs:16:34 [INFO] [stdout] | [INFO] [stdout] 16 | for (x, y, pixel) in img.enumerate_pixels_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ method cannot be called on `ImageBuffer` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `u32: Pixel` [INFO] [stdout] `u32: Deref` [INFO] [stdout] `u32: DerefMut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `transpose` found for struct `Matrix` in the current scope [INFO] [stdout] --> src/raytracer/transformation.rs:24:42 [INFO] [stdout] | [INFO] [stdout] 22 | transformation.trans_mat_transposed = matrix [INFO] [stdout] | _______________________________________________- [INFO] [stdout] 23 | | .clone() [INFO] [stdout] 24 | | .transpose(); [INFO] [stdout] | | -^^^^^^^^^ method not found in `Matrix` [INFO] [stdout] | |_________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/rulinalg-0.4.2/src/matrix/base/mod.rs:901:8 [INFO] [stdout] | [INFO] [stdout] 901 | fn transpose(&self) -> Matrix [INFO] [stdout] | --------- the method is available for `Matrix` here [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `BaseMatrix` which provides `transpose` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 1 + use crate::raytracer::intersection::rulinalg::matrix::BaseMatrix; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `transpose` found for struct `Matrix` in the current scope [INFO] [stdout] --> src/raytracer/transformation.rs:24:42 [INFO] [stdout] | [INFO] [stdout] 22 | transformation.trans_mat_transposed = matrix [INFO] [stdout] | _______________________________________________- [INFO] [stdout] 23 | | .clone() [INFO] [stdout] 24 | | .transpose(); [INFO] [stdout] | | -^^^^^^^^^ method not found in `Matrix` [INFO] [stdout] | |_________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/rulinalg-0.4.2/src/matrix/base/mod.rs:901:8 [INFO] [stdout] | [INFO] [stdout] 901 | fn transpose(&self) -> Matrix [INFO] [stdout] | --------- the method is available for `Matrix` here [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `BaseMatrix` which provides `transpose` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 1 + use crate::raytracer::intersection::rulinalg::matrix::BaseMatrix; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `transpose` found for struct `Matrix` in the current scope [INFO] [stdout] --> src/raytracer/transformation.rs:30:42 [INFO] [stdout] | [INFO] [stdout] 26 | transformation.trans_mat_inv_transposed = matrix [INFO] [stdout] | ___________________________________________________- [INFO] [stdout] 27 | | .clone() [INFO] [stdout] 28 | | .inverse() [INFO] [stdout] | | --------- method `transpose` is available on `Result, intersection::rulinalg::error::Error>` [INFO] [stdout] 29 | | .expect("Matrix was not square when attempting inversion.") [INFO] [stdout] 30 | | .transpose(); [INFO] [stdout] | | -^^^^^^^^^ method not found in `Matrix` [INFO] [stdout] | |_________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/rulinalg-0.4.2/src/matrix/base/mod.rs:901:8 [INFO] [stdout] | [INFO] [stdout] 901 | fn transpose(&self) -> Matrix [INFO] [stdout] | --------- the method is available for `Matrix` here [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `BaseMatrix` which provides `transpose` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 1 + use crate::raytracer::intersection::rulinalg::matrix::BaseMatrix; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/group.rs:16:38 [INFO] [stdout] | [INFO] [stdout] 16 | fn intersect(&self, ray: Ray) -> Intersection { [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `Intersection`, found `()` [INFO] [stdout] | | [INFO] [stdout] | implicitly returns `()` as its body has no tail or `return` expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `transpose` found for struct `Matrix` in the current scope [INFO] [stdout] --> src/raytracer/transformation.rs:30:42 [INFO] [stdout] | [INFO] [stdout] 26 | transformation.trans_mat_inv_transposed = matrix [INFO] [stdout] | ___________________________________________________- [INFO] [stdout] 27 | | .clone() [INFO] [stdout] 28 | | .inverse() [INFO] [stdout] | | --------- method `transpose` is available on `Result, intersection::rulinalg::error::Error>` [INFO] [stdout] 29 | | .expect("Matrix was not square when attempting inversion.") [INFO] [stdout] 30 | | .transpose(); [INFO] [stdout] | | -^^^^^^^^^ method not found in `Matrix` [INFO] [stdout] | |_________________________________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/rulinalg-0.4.2/src/matrix/base/mod.rs:901:8 [INFO] [stdout] | [INFO] [stdout] 901 | fn transpose(&self) -> Matrix [INFO] [stdout] | --------- the method is available for `Matrix` here [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `BaseMatrix` which provides `transpose` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 1 + use crate::raytracer::intersection::rulinalg::matrix::BaseMatrix; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/group.rs:16:38 [INFO] [stdout] | [INFO] [stdout] 16 | fn intersect(&self, ray: Ray) -> Intersection { [INFO] [stdout] | --------- ^^^^^^^^^^^^ expected `Intersection`, found `()` [INFO] [stdout] | | [INFO] [stdout] | implicitly returns `()` as its body has no tail or `return` expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0070]: invalid left-hand side of assignment [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | &self.center = center; [INFO] [stdout] | ------------ ^ [INFO] [stdout] | | [INFO] [stdout] | cannot assign to this expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0070]: invalid left-hand side of assignment [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:19:22 [INFO] [stdout] | [INFO] [stdout] 19 | &self.radius = radius; [INFO] [stdout] | ------------ ^ [INFO] [stdout] | | [INFO] [stdout] | cannot assign to this expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0070]: invalid left-hand side of assignment [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | &self.center = center; [INFO] [stdout] | ------------ ^ [INFO] [stdout] | | [INFO] [stdout] | cannot assign to this expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0070]: invalid left-hand side of assignment [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | &self.material = material; [INFO] [stdout] | -------------- ^ [INFO] [stdout] | | [INFO] [stdout] | cannot assign to this expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:17:76 [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Shape { [INFO] [stdout] | --- ^^^^^ expected `dyn Shape`, found `()` [INFO] [stdout] | | [INFO] [stdout] | implicitly returns `()` as its body has no tail or `return` expression [INFO] [stdout] | [INFO] [stdout] = note: expected trait object `(dyn Shape + 'static)` [INFO] [stdout] found unit type `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0746]: return type cannot have an unboxed trait object [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:17:76 [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Shape { [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] help: box the return type, and wrap all of the returned values in `Box::new` [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Box { [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0070]: invalid left-hand side of assignment [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:19:22 [INFO] [stdout] | [INFO] [stdout] 19 | &self.radius = radius; [INFO] [stdout] | ------------ ^ [INFO] [stdout] | | [INFO] [stdout] | cannot assign to this expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0070]: invalid left-hand side of assignment [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | &self.material = material; [INFO] [stdout] | -------------- ^ [INFO] [stdout] | | [INFO] [stdout] | cannot assign to this expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:17:76 [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Shape { [INFO] [stdout] | --- ^^^^^ expected `dyn Shape`, found `()` [INFO] [stdout] | | [INFO] [stdout] | implicitly returns `()` as its body has no tail or `return` expression [INFO] [stdout] | [INFO] [stdout] = note: expected trait object `(dyn Shape + 'static)` [INFO] [stdout] found unit type `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0746]: return type cannot have an unboxed trait object [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:17:76 [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Shape { [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] help: box the return type, and wrap all of the returned values in `Box::new` [INFO] [stdout] | [INFO] [stdout] 17 | fn new(&self, center: Vector, radius: f32, material: Material) -> Box { [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:25:42 [INFO] [stdout] | [INFO] [stdout] 25 | let a: f32 = ray.norm_dir.elemul(ray.norm_dir); [INFO] [stdout] | ------ ^^^^^^^^^^^^ expected `&Vector`, found `Vector` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&Vector<_>` [INFO] [stdout] found struct `Vector<_>` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/rulinalg-0.4.2/src/vector/impl_vec.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 360 | pub fn elemul(&self, v: &Vector) -> Vector { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] help: consider borrowing here [INFO] [stdout] | [INFO] [stdout] 25 | let a: f32 = ray.norm_dir.elemul(&ray.norm_dir); [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:25:22 [INFO] [stdout] | [INFO] [stdout] 25 | let a: f32 = ray.norm_dir.elemul(ray.norm_dir); [INFO] [stdout] | --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `f32`, found `Vector` [INFO] [stdout] | | [INFO] [stdout] | expected due to this [INFO] [stdout] | [INFO] [stdout] = note: expected type `f32` [INFO] [stdout] found struct `Vector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:25:42 [INFO] [stdout] | [INFO] [stdout] 25 | let a: f32 = ray.norm_dir.elemul(ray.norm_dir); [INFO] [stdout] | ------ ^^^^^^^^^^^^ expected `&Vector`, found `Vector` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&Vector<_>` [INFO] [stdout] found struct `Vector<_>` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/rulinalg-0.4.2/src/vector/impl_vec.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 360 | pub fn elemul(&self, v: &Vector) -> Vector { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] help: consider borrowing here [INFO] [stdout] | [INFO] [stdout] 25 | let a: f32 = ray.norm_dir.elemul(&ray.norm_dir); [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/raytracer/shapes/sphere.rs:25:22 [INFO] [stdout] | [INFO] [stdout] 25 | let a: f32 = ray.norm_dir.elemul(ray.norm_dir); [INFO] [stdout] | --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `f32`, found `Vector` [INFO] [stdout] | | [INFO] [stdout] | expected due to this [INFO] [stdout] | [INFO] [stdout] = note: expected type `f32` [INFO] [stdout] found struct `Vector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ParseArgsError` [INFO] [stdout] --> src/main.rs:36:66 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn parse_args() -> Result<(String, f32), ParseArgsError> { [INFO] [stdout] | ------------------------------------- expected `ParseArgsError` because of this [INFO] [stdout] ... [INFO] [stdout] 36 | Some(argv) => Ok((String::from(&argv[0]), argv[1].parse()?)), [INFO] [stdout] | -------^ the trait `From` is not implemented for `ParseArgsError`, which is required by `Result<(String, f32), ParseArgsError>: FromResidual>` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, std::num::ParseFloatError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `ParseArgsError` [INFO] [stdout] = help: for that trait implementation, expected `ParseIntError`, found `std::num::ParseFloatError` [INFO] [stdout] = note: required for `Result<(String, f32), ParseArgsError>` to implement `FromResidual>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Group` [INFO] [stdout] --> src/main.rs:58:16 [INFO] [stdout] | [INFO] [stdout] 58 | let scene: Group = init_scene(); [INFO] [stdout] | ^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `Shape` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ ----- [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 58 | let scene: Group = init_scene(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ParseArgsError` [INFO] [stdout] --> src/main.rs:36:66 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn parse_args() -> Result<(String, f32), ParseArgsError> { [INFO] [stdout] | ------------------------------------- expected `ParseArgsError` because of this [INFO] [stdout] ... [INFO] [stdout] 36 | Some(argv) => Ok((String::from(&argv[0]), argv[1].parse()?)), [INFO] [stdout] | -------^ the trait `From` is not implemented for `ParseArgsError`, which is required by `Result<(String, f32), ParseArgsError>: FromResidual>` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, std::num::ParseFloatError>` [INFO] [stdout] | [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] = help: the trait `From` is implemented for `ParseArgsError` [INFO] [stdout] = help: for that trait implementation, expected `ParseIntError`, found `std::num::ParseFloatError` [INFO] [stdout] = note: required for `Result<(String, f32), ParseArgsError>` to implement `FromResidual>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `u32: From` is not satisfied [INFO] [stdout] --> src/main.rs:51:62 [INFO] [stdout] | [INFO] [stdout] 51 | let width = clamp::((WIDTH as f32 * res_multiplier).into(), 0, 8126); [INFO] [stdout] | ^^^^ the trait `From` is not implemented for `u32`, which is required by `f32: Into<_>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] = note: required for `f32` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Group` [INFO] [stdout] --> src/main.rs:58:16 [INFO] [stdout] | [INFO] [stdout] 58 | let scene: Group = init_scene(); [INFO] [stdout] | ^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `Shape` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ ----- [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 58 | let scene: Group = init_scene(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `u32: From` is not satisfied [INFO] [stdout] --> src/main.rs:52:64 [INFO] [stdout] | [INFO] [stdout] 52 | let height = clamp::((HEIGHT as f32 * res_multiplier).into(), 0, 8126); [INFO] [stdout] | ^^^^ the trait `From` is not implemented for `u32`, which is required by `f32: Into<_>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] = note: required for `f32` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `u32: From` is not satisfied [INFO] [stdout] --> src/main.rs:51:62 [INFO] [stdout] | [INFO] [stdout] 51 | let width = clamp::((WIDTH as f32 * res_multiplier).into(), 0, 8126); [INFO] [stdout] | ^^^^ the trait `From` is not implemented for `u32`, which is required by `f32: Into<_>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] = note: required for `f32` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:58:24 [INFO] [stdout] | [INFO] [stdout] 58 | let scene: Group = init_scene(); [INFO] [stdout] | ^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `u32: From` is not satisfied [INFO] [stdout] --> src/main.rs:52:64 [INFO] [stdout] | [INFO] [stdout] 52 | let height = clamp::((HEIGHT as f32 * res_multiplier).into(), 0, 8126); [INFO] [stdout] | ^^^^ the trait `From` is not implemented for `u32`, which is required by `f32: Into<_>` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] > [INFO] [stdout] = note: required for `f32` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:66:20 [INFO] [stdout] | [INFO] [stdout] 66 | fn init_scene() -> Group<'static, Shape> { [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^^^^ expected `Group<'_, dyn Shape>`, found `()` [INFO] [stdout] | | [INFO] [stdout] | implicitly returns `()` as its body has no tail or `return` expression [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Group<'static, (dyn Shape + 'static)>` [INFO] [stdout] found unit type `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn Shape + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:58:24 [INFO] [stdout] | [INFO] [stdout] 58 | let scene: Group = init_scene(); [INFO] [stdout] | ^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn Shape + 'static)` [INFO] [stdout] note: required by an implicit `Sized` bound in `Group` [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:22 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape> { [INFO] [stdout] | ^^^^^ required by the implicit `Sized` requirement on this type parameter in `Group` [INFO] [stdout] help: consider relaxing the implicit `Sized` restriction [INFO] [stdout] --> src/raytracer/shapes/group.rs:10:27 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Group<'a, Shape: ?Sized> { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:66:20 [INFO] [stdout] | [INFO] [stdout] 66 | fn init_scene() -> Group<'static, Shape> { [INFO] [stdout] | ---------- ^^^^^^^^^^^^^^^^^^^^^ expected `Group<'_, dyn Shape>`, found `()` [INFO] [stdout] | | [INFO] [stdout] | implicitly returns `()` as its body has no tail or `return` expression [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Group<'static, (dyn Shape + 'static)>` [INFO] [stdout] found unit type `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 33 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0010, E0015, E0046, E0050, E0070, E0107, E0186, E0277, E0308... [INFO] [stdout] [INFO] [stdout] error: aborting due to 33 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0010`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0010, E0015, E0046, E0050, E0070, E0107, E0186, E0277, E0308... [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0010`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rosengarten` (bin "rosengarten") due to 34 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `rosengarten` (bin "rosengarten" test) due to 34 previous errors [INFO] running `Command { std: "docker" "inspect" "0c29efb4382999c7ab42fd561213a51b3521a7067aeb9c006cccdeb2109db2b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0c29efb4382999c7ab42fd561213a51b3521a7067aeb9c006cccdeb2109db2b9", kill_on_drop: false }` [INFO] [stdout] 0c29efb4382999c7ab42fd561213a51b3521a7067aeb9c006cccdeb2109db2b9 [INFO] checking leonardlorenz/rosengarten against try#dae34b759e282c069aa28752564694effd121a63 for pr-125384 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleonardlorenz%2Frosengarten" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/leonardlorenz/rosengarten on toolchain dae34b759e282c069aa28752564694effd121a63 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dae34b759e282c069aa28752564694effd121a63" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/leonardlorenz/rosengarten [INFO] finished tweaking git repo https://github.com/leonardlorenz/rosengarten [INFO] tweaked toml for git repo https://github.com/leonardlorenz/rosengarten written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/leonardlorenz/rosengarten already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dae34b759e282c069aa28752564694effd121a63" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+dae34b759e282c069aa28752564694effd121a63" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 009a8a8aae69730ad96e22f5215a30d54e4f8ebdb6e29744a0b622f42d8cc65e [INFO] running `Command { std: "docker" "start" "-a" "009a8a8aae69730ad96e22f5215a30d54e4f8ebdb6e29744a0b622f42d8cc65e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "009a8a8aae69730ad96e22f5215a30d54e4f8ebdb6e29744a0b622f42d8cc65e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "009a8a8aae69730ad96e22f5215a30d54e4f8ebdb6e29744a0b622f42d8cc65e", kill_on_drop: false }` [INFO] [stdout] 009a8a8aae69730ad96e22f5215a30d54e4f8ebdb6e29744a0b622f42d8cc65e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=allow" "-e" "RUSTDOCFLAGS=--cap-lints=allow" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+dae34b759e282c069aa28752564694effd121a63" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cdcb6517fdcd11ebb974efeab85c586bb65804e884d8caf5043eedfd1662f860 [INFO] running `Command { std: "docker" "start" "-a" "cdcb6517fdcd11ebb974efeab85c586bb65804e884d8caf5043eedfd1662f860", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] skipping non-2021 edition `2018` [INFO] running `Command { std: "docker" "inspect" "cdcb6517fdcd11ebb974efeab85c586bb65804e884d8caf5043eedfd1662f860", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cdcb6517fdcd11ebb974efeab85c586bb65804e884d8caf5043eedfd1662f860", kill_on_drop: false }` [INFO] [stdout] cdcb6517fdcd11ebb974efeab85c586bb65804e884d8caf5043eedfd1662f860