[INFO] cloning repository https://github.com/mzgoddard/phrust [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mzgoddard/phrust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmzgoddard%2Fphrust"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmzgoddard%2Fphrust'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 5e4100de1e3f1ff374d722790142a7326d836713 [INFO] testing mzgoddard/phrust against 1.44.0 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmzgoddard%2Fphrust" "/workspace/builds/worker-5/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mzgoddard/phrust on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/mzgoddard/phrust [INFO] finished tweaking git repo https://github.com/mzgoddard/phrust [INFO] tweaked toml for git repo https://github.com/mzgoddard/phrust written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate git repo https://github.com/mzgoddard/phrust already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 4b901f2549268c55cf4b9affd3c2e747def055bade768c8a85cd9f907b78f597 [INFO] running `"docker" "start" "-a" "4b901f2549268c55cf4b9affd3c2e747def055bade768c8a85cd9f907b78f597"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling bitflags v0.7.0 [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling log v0.3.6 [INFO] [stderr] Compiling khronos_api v1.0.0 [INFO] [stderr] Compiling libc v0.2.14 [INFO] [stderr] Compiling winapi v0.2.8 [INFO] [stderr] Compiling libc v0.1.8 [INFO] [stderr] Compiling xml-rs v0.3.4 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling num_cpus v0.2.6 [INFO] [stderr] Compiling time v0.1.35 [INFO] [stderr] Compiling rand v0.3.14 [INFO] [stderr] Compiling gl_generator v0.5.2 [INFO] [stderr] Compiling gl v0.6.1 [INFO] [stderr] Compiling ph v0.0.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/math/base5.rs:17:7 [INFO] [stderr] | [INFO] [stderr] 17 | (((self.value as f32 * 5f32).log(5f32)).floor() as usize) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:189:44 [INFO] [stderr] | [INFO] [stderr] 189 | fn _walk_rev_mut(&mut self, handle: &mut FnMut(&mut QuadTree)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut QuadTree)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:226:45 [INFO] [stderr] | [INFO] [stderr] 226 | fn walk_bb_mut(&mut self, b: BB, handle: &Fn(&mut VirtualVolume)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut VirtualVolume)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:344:81 [INFO] [stderr] | [INFO] [stderr] 344 | fn tree_split_with(&mut self, children: &mut [&mut VirtualVolume], data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:490:72 [INFO] [stderr] | [INFO] [stderr] 490 | fn tree_join_with(&mut self, children: &[&VirtualVolume], data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:12:72 [INFO] [stderr] | [INFO] [stderr] 12 | fn tree_split_with(&mut self, children: &mut [&mut Self], data: &mut Any); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:16:64 [INFO] [stderr] | [INFO] [stderr] 16 | fn tree_join_with(&mut self, children: & [&Self], data: &mut Any); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:117:43 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn split_with(&mut self, data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:158:42 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn join_with(&mut self, data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:806:68 [INFO] [stderr] | [INFO] [stderr] 806 | fn tree_split_with(&mut self, children: &mut [&mut i32], _: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:816:59 [INFO] [stderr] | [INFO] [stderr] 816 | fn tree_join_with(&mut self, children: &[&i32], _: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pool.rs:52:15 [INFO] [stderr] | [INFO] [stderr] 52 | handle: Box Option + 'static + Send>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(T) -> Option + 'static + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | effects: Vec>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:61:21 [INFO] [stderr] | [INFO] [stderr] 61 | RemoveEffect(*mut WorldEffect), [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | ptr: *mut WorldEffect, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:76:64 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn as_mut<'a>(&'a mut self, _: &'a mut World) -> &'a mut WorldEffect { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:108:32 [INFO] [stderr] | [INFO] [stderr] 108 | fn as_any(&mut self) -> &mut Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:122:32 [INFO] [stderr] | [INFO] [stderr] 122 | fn as_any(&mut self) -> &mut Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:123:18 [INFO] [stderr] | [INFO] [stderr] 123 | self as &mut Any [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:394:52 [INFO] [stderr] | [INFO] [stderr] 394 | pub fn iter_effects(&self) -> slice::IterMut> { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:477:37 [INFO] [stderr] | [INFO] [stderr] 477 | ptr: &mut *effect_box as *mut WorldEffect, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:483:89 [INFO] [stderr] | [INFO] [stderr] 483 | pub fn borrow_effect_mut<'a>(&'a mut self, effect: &'a mut WorldEffectRef) -> &'a mut WorldEffect { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:491:45 [INFO] [stderr] | [INFO] [stderr] 491 | fn _remove_effect(&mut self, effect: &mut WorldEffect) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:492:82 [INFO] [stderr] | [INFO] [stderr] 492 | if let Some(index) = self.effects.iter().position(|e| &*e.as_ref() as *const WorldEffect == &*effect as *const WorldEffect) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:492:116 [INFO] [stderr] | [INFO] [stderr] 492 | if let Some(index) = self.effects.iter().position(|e| &*e.as_ref() as *const WorldEffect == &*effect as *const WorldEffect) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:502:56 [INFO] [stderr] | [INFO] [stderr] 502 | pub fn iter_effects(&mut self) -> slice::IterMut> { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/world.rs:979:26 [INFO] [stderr] | [INFO] [stderr] 979 | fn new() -> WorldPool {; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world_renderer.rs:19:15 [INFO] [stderr] | [INFO] [stderr] 19 | driver: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Driver` [INFO] [stderr] [INFO] [stderr] warning: type annotations needed [INFO] [stderr] --> src/world_renderer.rs:349:23 [INFO] [stderr] | [INFO] [stderr] 349 | ptr::null().offset(gl_attrib_data.pointer as isize), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(tyvar_behind_raw_pointer)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [INFO] [stderr] = note: for more information, see issue #46906 [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ddvt.rs:766:9 [INFO] [stderr] | [INFO] [stderr] 766 | let mut bb_clones = unsafe { &mut *(&mut self.bb_clone as *mut Vec) as &mut Vec }; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ddvt.rs:922:9 [INFO] [stderr] | [INFO] [stderr] 922 | let mut bb_clones = unsafe { &mut *(&mut self.bb_clone as *mut Vec) as &mut Vec }; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world.rs:644:9 [INFO] [stderr] | [INFO] [stderr] 644 | let mut volume_tree = unsafe { &mut *(&mut self.volume_tree as *mut VolumeRoot) as &mut VolumeRoot }; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world_renderer.rs:441:15 [INFO] [stderr] | [INFO] [stderr] 441 | let mut program = &mut self.programs[draw.program.as_usize()]; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world_renderer.rs:592:15 [INFO] [stderr] | [INFO] [stderr] 592 | let mut data = &mut draw.mesh; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ShutDown` [INFO] [stderr] --> src/world.rs:160:3 [INFO] [stderr] | [INFO] [stderr] 160 | ShutDown, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `r` [INFO] [stderr] --> src/world_renderer.rs:34:3 [INFO] [stderr] | [INFO] [stderr] 34 | r: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `g` [INFO] [stderr] --> src/world_renderer.rs:35:3 [INFO] [stderr] | [INFO] [stderr] 35 | g: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `b` [INFO] [stderr] --> src/world_renderer.rs:36:3 [INFO] [stderr] | [INFO] [stderr] 36 | b: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `a` [INFO] [stderr] --> src/world_renderer.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | a: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `x` [INFO] [stderr] --> src/world_renderer.rs:59:3 [INFO] [stderr] | [INFO] [stderr] 59 | x: GLfloat, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `y` [INFO] [stderr] --> src/world_renderer.rs:60:3 [INFO] [stderr] | [INFO] [stderr] 60 | y: GLfloat, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `color` [INFO] [stderr] --> src/world_renderer.rs:61:3 [INFO] [stderr] | [INFO] [stderr] 61 | color: GLColor, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `vertices` [INFO] [stderr] --> src/world_renderer.rs:66:3 [INFO] [stderr] | [INFO] [stderr] 66 | vertices: [GLVertex; 6], [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 43 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 23.13s [INFO] running `"docker" "inspect" "4b901f2549268c55cf4b9affd3c2e747def055bade768c8a85cd9f907b78f597"` [INFO] running `"docker" "rm" "-f" "4b901f2549268c55cf4b9affd3c2e747def055bade768c8a85cd9f907b78f597"` [INFO] [stdout] 4b901f2549268c55cf4b9affd3c2e747def055bade768c8a85cd9f907b78f597 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 39ae1ca3678d130dba6b68045a35bc99a5ae9fa9d7333071f1a27ba176156cba [INFO] running `"docker" "start" "-a" "39ae1ca3678d130dba6b68045a35bc99a5ae9fa9d7333071f1a27ba176156cba"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling num-traits v0.1.33 [INFO] [stderr] Compiling rustc-serialize v0.3.19 [INFO] [stderr] Compiling glfw-sys v3.1.3 [INFO] [stderr] Compiling nom v1.2.3 [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/math/base5.rs:17:7 [INFO] [stderr] | [INFO] [stderr] 17 | (((self.value as f32 * 5f32).log(5f32)).floor() as usize) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:189:44 [INFO] [stderr] | [INFO] [stderr] 189 | fn _walk_rev_mut(&mut self, handle: &mut FnMut(&mut QuadTree)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut QuadTree)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:226:45 [INFO] [stderr] | [INFO] [stderr] 226 | fn walk_bb_mut(&mut self, b: BB, handle: &Fn(&mut VirtualVolume)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut VirtualVolume)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:344:81 [INFO] [stderr] | [INFO] [stderr] 344 | fn tree_split_with(&mut self, children: &mut [&mut VirtualVolume], data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ddvt.rs:490:72 [INFO] [stderr] | [INFO] [stderr] 490 | fn tree_join_with(&mut self, children: &[&VirtualVolume], data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:12:72 [INFO] [stderr] | [INFO] [stderr] 12 | fn tree_split_with(&mut self, children: &mut [&mut Self], data: &mut Any); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:16:64 [INFO] [stderr] | [INFO] [stderr] 16 | fn tree_join_with(&mut self, children: & [&Self], data: &mut Any); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:117:43 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn split_with(&mut self, data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:158:42 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn join_with(&mut self, data: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:806:68 [INFO] [stderr] | [INFO] [stderr] 806 | fn tree_split_with(&mut self, children: &mut [&mut i32], _: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/quad_tree.rs:816:59 [INFO] [stderr] | [INFO] [stderr] 816 | fn tree_join_with(&mut self, children: &[&i32], _: &mut Any) { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/pool.rs:52:15 [INFO] [stderr] | [INFO] [stderr] 52 | handle: Box Option + 'static + Send>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(T) -> Option + 'static + Send` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | effects: Vec>, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:61:21 [INFO] [stderr] | [INFO] [stderr] 61 | RemoveEffect(*mut WorldEffect), [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | ptr: *mut WorldEffect, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:76:64 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn as_mut<'a>(&'a mut self, _: &'a mut World) -> &'a mut WorldEffect { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:108:32 [INFO] [stderr] | [INFO] [stderr] 108 | fn as_any(&mut self) -> &mut Any; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:122:32 [INFO] [stderr] | [INFO] [stderr] 122 | fn as_any(&mut self) -> &mut Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:123:18 [INFO] [stderr] | [INFO] [stderr] 123 | self as &mut Any [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:394:52 [INFO] [stderr] | [INFO] [stderr] 394 | pub fn iter_effects(&self) -> slice::IterMut> { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:477:37 [INFO] [stderr] | [INFO] [stderr] 477 | ptr: &mut *effect_box as *mut WorldEffect, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:483:89 [INFO] [stderr] | [INFO] [stderr] 483 | pub fn borrow_effect_mut<'a>(&'a mut self, effect: &'a mut WorldEffectRef) -> &'a mut WorldEffect { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:491:45 [INFO] [stderr] | [INFO] [stderr] 491 | fn _remove_effect(&mut self, effect: &mut WorldEffect) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:492:82 [INFO] [stderr] | [INFO] [stderr] 492 | if let Some(index) = self.effects.iter().position(|e| &*e.as_ref() as *const WorldEffect == &*effect as *const WorldEffect) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:492:116 [INFO] [stderr] | [INFO] [stderr] 492 | if let Some(index) = self.effects.iter().position(|e| &*e.as_ref() as *const WorldEffect == &*effect as *const WorldEffect) { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world.rs:502:56 [INFO] [stderr] | [INFO] [stderr] 502 | pub fn iter_effects(&mut self) -> slice::IterMut> { [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn WorldEffect` [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/world.rs:979:26 [INFO] [stderr] | [INFO] [stderr] 979 | fn new() -> WorldPool {; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/world_renderer.rs:19:15 [INFO] [stderr] | [INFO] [stderr] 19 | driver: Box, [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Driver` [INFO] [stderr] [INFO] [stderr] warning: type annotations needed [INFO] [stderr] --> src/world_renderer.rs:349:23 [INFO] [stderr] | [INFO] [stderr] 349 | ptr::null().offset(gl_attrib_data.pointer as isize), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(tyvar_behind_raw_pointer)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [INFO] [stderr] = note: for more information, see issue #46906 [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ddvt.rs:766:9 [INFO] [stderr] | [INFO] [stderr] 766 | let mut bb_clones = unsafe { &mut *(&mut self.bb_clone as *mut Vec) as &mut Vec }; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ddvt.rs:922:9 [INFO] [stderr] | [INFO] [stderr] 922 | let mut bb_clones = unsafe { &mut *(&mut self.bb_clone as *mut Vec) as &mut Vec }; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world.rs:644:9 [INFO] [stderr] | [INFO] [stderr] 644 | let mut volume_tree = unsafe { &mut *(&mut self.volume_tree as *mut VolumeRoot) as &mut VolumeRoot }; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world_renderer.rs:441:15 [INFO] [stderr] | [INFO] [stderr] 441 | let mut program = &mut self.programs[draw.program.as_usize()]; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world_renderer.rs:592:15 [INFO] [stderr] | [INFO] [stderr] 592 | let mut data = &mut draw.mesh; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ShutDown` [INFO] [stderr] --> src/world.rs:160:3 [INFO] [stderr] | [INFO] [stderr] 160 | ShutDown, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `r` [INFO] [stderr] --> src/world_renderer.rs:34:3 [INFO] [stderr] | [INFO] [stderr] 34 | r: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `g` [INFO] [stderr] --> src/world_renderer.rs:35:3 [INFO] [stderr] | [INFO] [stderr] 35 | g: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `b` [INFO] [stderr] --> src/world_renderer.rs:36:3 [INFO] [stderr] | [INFO] [stderr] 36 | b: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `a` [INFO] [stderr] --> src/world_renderer.rs:37:3 [INFO] [stderr] | [INFO] [stderr] 37 | a: GLubyte, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `x` [INFO] [stderr] --> src/world_renderer.rs:59:3 [INFO] [stderr] | [INFO] [stderr] 59 | x: GLfloat, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `y` [INFO] [stderr] --> src/world_renderer.rs:60:3 [INFO] [stderr] | [INFO] [stderr] 60 | y: GLfloat, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `color` [INFO] [stderr] --> src/world_renderer.rs:61:3 [INFO] [stderr] | [INFO] [stderr] 61 | color: GLColor, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `vertices` [INFO] [stderr] --> src/world_renderer.rs:66:3 [INFO] [stderr] | [INFO] [stderr] 66 | vertices: [GLVertex; 6], [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 43 warnings emitted [INFO] [stderr] [INFO] [stderr] error: environment variable `OUT_DIR` not defined [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/glfw-sys-3.1.3/build.rs:13:37 [INFO] [stderr] | [INFO] [stderr] 13 | .current_dir(&Path::new(env!("OUT_DIR"))) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: environment variable `OUT_DIR` not defined [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/glfw-sys-3.1.3/build.rs:25:37 [INFO] [stderr] | [INFO] [stderr] 25 | .current_dir(&Path::new(env!("OUT_DIR"))) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: environment variable `OUT_DIR` not defined [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/glfw-sys-3.1.3/build.rs:36:25 [INFO] [stderr] | [INFO] [stderr] 36 | fs::copy(&Path::new(env!("OUT_DIR")).join("src").join("libglfw3.a"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: environment variable `OUT_DIR` not defined [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/glfw-sys-3.1.3/build.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | &Path::new(env!("OUT_DIR")).join("libglfw3.a")) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: environment variable `OUT_DIR` not defined [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/glfw-sys-3.1.3/build.rs:40:57 [INFO] [stderr] | [INFO] [stderr] 40 | println!("cargo:rustc-flags=-L {} -l glfw3:static", env!("OUT_DIR")); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 5 previous errors [INFO] [stderr] [INFO] [stderr] error: could not compile `glfw-sys`. [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] [stderr] error[E0642]: patterns aren't allowed in functions without bodies [INFO] [stderr] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/rustc-serialize-0.3.19/src/serialize.rs:147:45 [INFO] [stderr] | [INFO] [stderr] 147 | ... &f_name: &str, [INFO] [stderr] | ^^^^^^^ pattern not allowed in function without body [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0642`. [INFO] [stderr] error: could not compile `rustc-serialize`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "39ae1ca3678d130dba6b68045a35bc99a5ae9fa9d7333071f1a27ba176156cba"` [INFO] running `"docker" "rm" "-f" "39ae1ca3678d130dba6b68045a35bc99a5ae9fa9d7333071f1a27ba176156cba"` [INFO] [stdout] 39ae1ca3678d130dba6b68045a35bc99a5ae9fa9d7333071f1a27ba176156cba