[INFO] cloning repository https://github.com/svew/rust-voroni-diagram [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/svew/rust-voroni-diagram" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsvew%2Frust-voroni-diagram", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsvew%2Frust-voroni-diagram'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 17ff733fccbff46ba3f3d2eb134d89f4ff5c2bee [INFO] building svew/rust-voroni-diagram against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsvew%2Frust-voroni-diagram" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/svew/rust-voroni-diagram on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/svew/rust-voroni-diagram [INFO] finished tweaking git repo https://github.com/svew/rust-voroni-diagram [INFO] tweaked toml for git repo https://github.com/svew/rust-voroni-diagram written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/svew/rust-voroni-diagram 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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ordered-float v0.5.0 [INFO] [stderr] Downloaded wayland-window v0.13.3 [INFO] [stderr] Downloaded wayland-sys v0.12.5 [INFO] [stderr] Downloaded winit v0.10.0 [INFO] [stderr] Downloaded core-graphics v0.13.0 [INFO] [stderr] Downloaded gleam v0.4.30 [INFO] [stderr] Downloaded wayland-client v0.12.5 [INFO] [stderr] Downloaded wayland-kbd v0.13.1 [INFO] [stderr] Downloaded glutin v0.12.2 [INFO] [stderr] Downloaded wayland-protocols v0.12.5 [INFO] [stderr] Downloaded cocoa v0.14.0 [INFO] [stderr] Downloaded shared_library v0.1.8 [INFO] [stderr] Downloaded cocoa v0.13.0 [INFO] [stderr] Downloaded core-foundation-sys v0.4.6 [INFO] [stderr] Downloaded remove_dir_all v0.5.0 [INFO] [stderr] Downloaded tempfile v3.0.0 [INFO] [stderr] Downloaded wayland-scanner v0.12.5 [INFO] [stderr] Downloaded x11-dl v2.17.3 [INFO] [stderr] Downloaded gl_generator v0.8.0 [INFO] [stderr] Downloaded core-foundation v0.4.6 [INFO] [stderr] Downloaded core-graphics v0.12.4 [INFO] [stderr] Downloaded token_store v0.1.2 [INFO] [stderr] Downloaded glium v0.20.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 65b34f0e071ae037eefd9ab2df84384f4a55a041f8ba322bf34d3dcc2338ac03 [INFO] running `Command { std: "docker" "start" "-a" "65b34f0e071ae037eefd9ab2df84384f4a55a041f8ba322bf34d3dcc2338ac03", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "65b34f0e071ae037eefd9ab2df84384f4a55a041f8ba322bf34d3dcc2338ac03", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "65b34f0e071ae037eefd9ab2df84384f4a55a041f8ba322bf34d3dcc2338ac03", kill_on_drop: false }` [INFO] [stdout] 65b34f0e071ae037eefd9ab2df84384f4a55a041f8ba322bf34d3dcc2338ac03 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fc140e40022c5a9b6153880f8bd7996e1ccce4d204537ccd3a484320638e6440 [INFO] running `Command { std: "docker" "start" "-a" "fc140e40022c5a9b6153880f8bd7996e1ccce4d204537ccd3a484320638e6440", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling bitflags v1.0.1 [INFO] [stderr] Compiling cc v1.0.9 [INFO] [stderr] Compiling libc v0.2.40 [INFO] [stderr] Compiling lazy_static v1.0.0 [INFO] [stderr] Compiling cfg-if v0.1.2 [INFO] [stderr] Compiling khronos_api v2.2.0 [INFO] [stderr] Compiling token_store v0.1.2 [INFO] [stderr] Compiling pkg-config v0.3.9 [INFO] [stderr] Compiling remove_dir_all v0.5.0 [INFO] [stderr] Compiling num-traits v0.2.2 [INFO] [stderr] Compiling rustc-demangle v0.1.7 [INFO] [stderr] Compiling smallvec v0.6.0 [INFO] [stderr] Compiling unreachable v0.1.1 [INFO] [stderr] Compiling log v0.4.1 [INFO] [stderr] Compiling xml-rs v0.7.0 [INFO] [stderr] Compiling x11-dl v2.17.3 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling memmap v0.6.2 [INFO] [stderr] Compiling rand v0.4.2 [INFO] [stderr] Compiling shared_library v0.1.8 [INFO] [stderr] Compiling wayland-scanner v0.12.5 [INFO] [stderr] Compiling gl_generator v0.8.0 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling osmesa-sys v0.1.2 [INFO] [stderr] Compiling ordered-float v0.5.0 [INFO] [stderr] Compiling libloading v0.5.0 [INFO] [stderr] Compiling backtrace-sys v0.1.16 [INFO] [stderr] Compiling glutin v0.12.2 [INFO] [stderr] Compiling glium v0.20.0 [INFO] [stderr] Compiling wayland-client v0.12.5 [INFO] [stderr] Compiling wayland-protocols v0.12.5 [INFO] [stderr] Compiling tempfile v3.0.0 [INFO] [stderr] Compiling dlib v0.4.1 [INFO] [stderr] Compiling wayland-sys v0.12.5 [INFO] [stderr] Compiling wayland-kbd v0.13.1 [INFO] [stderr] Compiling wayland-window v0.13.3 [INFO] [stderr] Compiling winit v0.10.0 [INFO] [stderr] Compiling backtrace v0.3.5 [INFO] [stderr] Compiling voroni v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | {if point.x() < min.x() {point.x()} else {min.x()}}, [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 21 - {if point.x() < min.x() {point.x()} else {min.x()}}, [INFO] [stdout] 21 + if point.x() < min.x() {point.x()} else {min.x()}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | {if point.y() < min.y() {point.y()} else {min.y()}})); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 22 - {if point.y() < min.y() {point.y()} else {min.y()}})); [INFO] [stdout] 22 + if point.y() < min.y() {point.y()} else {min.y()})); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:29:17 [INFO] [stdout] | [INFO] [stdout] 29 | {if point.x() > max.x() {point.x()} else {max.x()}}, [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 29 - {if point.x() > max.x() {point.x()} else {max.x()}}, [INFO] [stdout] 29 + if point.x() > max.x() {point.x()} else {max.x()}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | {if point.y() > max.y() {point.y()} else {max.y()}})); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 30 - {if point.y() > max.y() {point.y()} else {max.y()}})); [INFO] [stdout] 30 + if point.y() > max.y() {point.y()} else {max.y()})); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `geometry::face::Face` [INFO] [stdout] --> src/geometry/edge.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use geometry::face::Face; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `geometry::vertex::Vertex` [INFO] [stdout] --> src/geometry/edge.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub use geometry::vertex::Vertex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/graphics/display.rs:20:2 [INFO] [stdout] | [INFO] [stdout] 20 | implement_vertex!(OpenglVertex, position, color); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/file/io.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 27 | Err(e) => None,}) //if not, return nothing [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `why` [INFO] [stdout] --> src/file/io.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | Err(why) => panic!("Oh no!"), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_why` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `why` [INFO] [stdout] --> src/file/io.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | Err(why) => panic!("Double oh no!"), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_why` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `site1` [INFO] [stdout] --> src/geometry/bound.rs:71:43 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn find_bound_intersection(&self, site1 : &Point, site2 : &Point) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_site1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `site2` [INFO] [stdout] --> src/geometry/bound.rs:71:59 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn find_bound_intersection(&self, site1 : &Point, site2 : &Point) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_site2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `break_point` [INFO] [stdout] --> src/voroni/voroni_process.rs:117:25 [INFO] [stdout] | [INFO] [stdout] 117 | NodeType::Internal(break_point) => panic!("We should not be intersecting an internal node!"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_break_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `break_point` [INFO] [stdout] --> src/voroni/voroni_process.rs:149:25 [INFO] [stdout] | [INFO] [stdout] 149 | NodeType::Internal(break_point) => panic!("We should not be intersecting an internal node!"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_break_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `break_point` [INFO] [stdout] --> src/voroni/voroni_process.rs:183:25 [INFO] [stdout] | [INFO] [stdout] 183 | NodeType::Internal(break_point) => panic!("We should not be intersecting an internal node!"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_break_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event_pointer` [INFO] [stdout] --> src/voroni/voroni_process.rs:282:70 [INFO] [stdout] | [INFO] [stdout] 282 | fn process_circle(&mut self, center : Point, leaf_middle_ptr : u32, event_pointer : u32) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_event_pointer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/voroni/voroni_process.rs:421:7 [INFO] [stdout] | [INFO] [stdout] 421 | let mut ss = &mut self.status_struct; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/geometry/bound.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Bound { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn get_top(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn get_bottom(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn get_left(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn get_right(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn get_max(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn get_min(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | fn margin(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn find_bound_intersection(&self, site1 : &Point, site2 : &Point) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn closer_point(x : &Point, a : &Point, b : &Point) -> Point { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_edge_tuple` is never used [INFO] [stdout] --> src/geometry/dcel.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 28 | impl DoublyConnectedEdgeList { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn get_edge_tuple(&self, edge_ptr : EdgePtr) -> Option<(VertexPtr, VertexPtr)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_inf` is never read [INFO] [stdout] --> src/geometry/edge.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Edge { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 11 | index : EdgePtr, [INFO] [stdout] 12 | pub is_inf : bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Edge` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cross` and `dot` are never used [INFO] [stdout] --> src/geometry/point.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl Point { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 72 | /// Computes the cross product of two points, viewed as vectors from the origin. [INFO] [stdout] 73 | pub fn cross(self, rhs: Point) -> f64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn dot(self, rhs: Point) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_parabola_y` is never used [INFO] [stdout] --> src/voroni/geometry.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn get_parabola_y(focus : &Point, line_y : f64, x : f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_parabola` is never used [INFO] [stdout] --> src/voroni/geometry.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn get_parabola(focus : &Point, line_y : f64) -> (f64, f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/graphics/display.rs:20:2 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn opengl_window(input_shapes : Vec) { [INFO] [stdout] | ------------------------------------------------------ move the `impl` block outside of this function `opengl_window` [INFO] [stdout] ... [INFO] [stdout] 20 | implement_vertex!(OpenglVertex, position, color); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `OpenglVertex` is not local [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | [INFO] [stdout] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.87s [INFO] running `Command { std: "docker" "inspect" "fc140e40022c5a9b6153880f8bd7996e1ccce4d204537ccd3a484320638e6440", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fc140e40022c5a9b6153880f8bd7996e1ccce4d204537ccd3a484320638e6440", kill_on_drop: false }` [INFO] [stdout] fc140e40022c5a9b6153880f8bd7996e1ccce4d204537ccd3a484320638e6440 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3a3f181362f7026af8f3766c47a8dda8a5fdbb46da209b041fec70ab92375895 [INFO] running `Command { std: "docker" "start" "-a" "3a3f181362f7026af8f3766c47a8dda8a5fdbb46da209b041fec70ab92375895", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling voroni v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | {if point.x() < min.x() {point.x()} else {min.x()}}, [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 21 - {if point.x() < min.x() {point.x()} else {min.x()}}, [INFO] [stdout] 21 + if point.x() < min.x() {point.x()} else {min.x()}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | {if point.y() < min.y() {point.y()} else {min.y()}})); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 22 - {if point.y() < min.y() {point.y()} else {min.y()}})); [INFO] [stdout] 22 + if point.y() < min.y() {point.y()} else {min.y()})); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:29:17 [INFO] [stdout] | [INFO] [stdout] 29 | {if point.x() > max.x() {point.x()} else {max.x()}}, [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 29 - {if point.x() > max.x() {point.x()} else {max.x()}}, [INFO] [stdout] 29 + if point.x() > max.x() {point.x()} else {max.x()}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around function argument [INFO] [stdout] --> src/geometry/bound.rs:30:17 [INFO] [stdout] | [INFO] [stdout] 30 | {if point.y() > max.y() {point.y()} else {max.y()}})); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 30 - {if point.y() > max.y() {point.y()} else {max.y()}})); [INFO] [stdout] 30 + if point.y() > max.y() {point.y()} else {max.y()})); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `geometry::face::Face` [INFO] [stdout] --> src/geometry/edge.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use geometry::face::Face; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `geometry::vertex::Vertex` [INFO] [stdout] --> src/geometry/edge.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub use geometry::vertex::Vertex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/graphics/display.rs:20:2 [INFO] [stdout] | [INFO] [stdout] 20 | implement_vertex!(OpenglVertex, position, color); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/file/io.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 27 | Err(e) => None,}) //if not, return nothing [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `why` [INFO] [stdout] --> src/file/io.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | Err(why) => panic!("Oh no!"), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_why` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `why` [INFO] [stdout] --> src/file/io.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | Err(why) => panic!("Double oh no!"), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_why` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `site1` [INFO] [stdout] --> src/geometry/bound.rs:71:43 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn find_bound_intersection(&self, site1 : &Point, site2 : &Point) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_site1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `site2` [INFO] [stdout] --> src/geometry/bound.rs:71:59 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn find_bound_intersection(&self, site1 : &Point, site2 : &Point) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_site2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e4` [INFO] [stdout] --> src/geometry/dcel.rs:320:7 [INFO] [stdout] | [INFO] [stdout] 320 | let e4 = dcel.new_edge(Some(v1)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_e4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e5` [INFO] [stdout] --> src/geometry/dcel.rs:321:7 [INFO] [stdout] | [INFO] [stdout] 321 | let e5 = dcel.new_edge(Some(v2)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_e5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e6` [INFO] [stdout] --> src/geometry/dcel.rs:322:7 [INFO] [stdout] | [INFO] [stdout] 322 | let e6 = dcel.new_edge(Some(v3)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_e6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `break_point` [INFO] [stdout] --> src/voroni/voroni_process.rs:117:25 [INFO] [stdout] | [INFO] [stdout] 117 | NodeType::Internal(break_point) => panic!("We should not be intersecting an internal node!"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_break_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `break_point` [INFO] [stdout] --> src/voroni/voroni_process.rs:149:25 [INFO] [stdout] | [INFO] [stdout] 149 | NodeType::Internal(break_point) => panic!("We should not be intersecting an internal node!"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_break_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `break_point` [INFO] [stdout] --> src/voroni/voroni_process.rs:183:25 [INFO] [stdout] | [INFO] [stdout] 183 | NodeType::Internal(break_point) => panic!("We should not be intersecting an internal node!"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_break_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event_pointer` [INFO] [stdout] --> src/voroni/voroni_process.rs:282:70 [INFO] [stdout] | [INFO] [stdout] 282 | fn process_circle(&mut self, center : Point, leaf_middle_ptr : u32, event_pointer : u32) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_event_pointer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/voroni/voroni_process.rs:421:7 [INFO] [stdout] | [INFO] [stdout] 421 | let mut ss = &mut self.status_struct; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/geometry/bound.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Bound { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn get_top(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn get_bottom(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn get_left(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn get_right(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn get_max(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn get_min(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | fn margin(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn find_bound_intersection(&self, site1 : &Point, site2 : &Point) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn closer_point(x : &Point, a : &Point, b : &Point) -> Point { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_edge_tuple` is never used [INFO] [stdout] --> src/geometry/dcel.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 28 | impl DoublyConnectedEdgeList { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn get_edge_tuple(&self, edge_ptr : EdgePtr) -> Option<(VertexPtr, VertexPtr)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_inf` is never read [INFO] [stdout] --> src/geometry/edge.rs:12:6 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Edge { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 11 | index : EdgePtr, [INFO] [stdout] 12 | pub is_inf : bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Edge` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `cross` and `dot` are never used [INFO] [stdout] --> src/geometry/point.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl Point { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 72 | /// Computes the cross product of two points, viewed as vectors from the origin. [INFO] [stdout] 73 | pub fn cross(self, rhs: Point) -> f64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn dot(self, rhs: Point) -> f64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_parabola_y` is never used [INFO] [stdout] --> src/voroni/geometry.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn get_parabola_y(focus : &Point, line_y : f64, x : f64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_parabola` is never used [INFO] [stdout] --> src/voroni/geometry.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn get_parabola(focus : &Point, line_y : f64) -> (f64, f64, f64) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/graphics/display.rs:20:2 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn opengl_window(input_shapes : Vec) { [INFO] [stdout] | ------------------------------------------------------ move the `impl` block outside of this function `opengl_window` [INFO] [stdout] ... [INFO] [stdout] 20 | implement_vertex!(OpenglVertex, position, color); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `OpenglVertex` is not local [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | [INFO] [stdout] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s [INFO] running `Command { std: "docker" "inspect" "3a3f181362f7026af8f3766c47a8dda8a5fdbb46da209b041fec70ab92375895", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3a3f181362f7026af8f3766c47a8dda8a5fdbb46da209b041fec70ab92375895", kill_on_drop: false }` [INFO] [stdout] 3a3f181362f7026af8f3766c47a8dda8a5fdbb46da209b041fec70ab92375895