[INFO] fetching crate collenchyma 0.0.8...
[INFO] checking collenchyma-0.0.8 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate collenchyma 0.0.8 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate collenchyma 0.0.8 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate collenchyma 0.0.8
[INFO] finished tweaking crates.io crate collenchyma 0.0.8
[INFO] tweaked toml for crates.io crate collenchyma 0.0.8 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 30 packages to latest compatible versions
[INFO] [stderr]       Adding bitflags v0.3.3 (latest: v2.5.0)
[INFO] [stderr]       Adding byteorder v0.4.2 (latest: v1.5.0)
[INFO] [stderr]       Adding clippy v0.0.27 (latest: v0.0.302)
[INFO] [stderr]       Adding lazy_static v0.1.16 (latest: v1.4.0)
[INFO] [stderr]       Adding linear-map v0.0.4 (latest: v1.2.0)
[INFO] [stderr]       Adding num v0.1.42 (latest: v0.4.2)
[INFO] [stderr]       Adding num-bigint v0.1.44 (latest: v0.4.4)
[INFO] [stderr]       Adding num-complex v0.1.43 (latest: v0.4.5)
[INFO] [stderr]       Adding num-rational v0.1.42 (latest: v0.4.1)
[INFO] [stderr]       Adding num-traits v0.1.43 (latest: v0.2.18)
[INFO] [stderr]       Adding rand v0.3.23 (latest: v0.8.5)
[INFO] [stderr]       Adding rand v0.4.6 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded byteorder v0.4.2
[INFO] [stderr]   Downloaded lazy_static v0.1.16
[INFO] [stderr]   Downloaded clippy v0.0.27
[INFO] [stderr]   Downloaded linear-map v0.0.4
[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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6a148e4a6987d9707167cb3ffe37af4adfbcb29ec7209f4a80ca38af37d70c14
[INFO] running `Command { std: "docker" "start" "-a" "6a148e4a6987d9707167cb3ffe37af4adfbcb29ec7209f4a80ca38af37d70c14", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6a148e4a6987d9707167cb3ffe37af4adfbcb29ec7209f4a80ca38af37d70c14", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6a148e4a6987d9707167cb3ffe37af4adfbcb29ec7209f4a80ca38af37d70c14", kill_on_drop: false }`
[INFO] [stdout] 6a148e4a6987d9707167cb3ffe37af4adfbcb29ec7209f4a80ca38af37d70c14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9d567aac28276258117d8c65ce45fc731abdcd44d82d8f811667bb701e134fbb
[INFO] running `Command { std: "docker" "start" "-a" "9d567aac28276258117d8c65ce45fc731abdcd44d82d8f811667bb701e134fbb", kill_on_drop: false }`
[INFO] [stderr]     Checking num-bigint v0.1.44
[INFO] [stderr]     Checking num-complex v0.1.43
[INFO] [stderr]     Checking num-iter v0.1.44
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking byteorder v0.4.2
[INFO] [stderr]     Checking lazy_static v0.1.16
[INFO] [stderr]     Checking bitflags v0.3.3
[INFO] [stderr]     Checking linear-map v0.0.4
[INFO] [stderr]     Checking enum_primitive v0.1.1
[INFO] [stderr]     Checking num-rational v0.1.42
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking collenchyma v0.0.8 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/backend.rs:69:22
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let device = try!(config.framework.new_device(config.hardwares));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/framework.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn new_device(&self, &[Self::H]) -> Result<DeviceType, Error>;
[INFO] [stdout]    |                          ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::H]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/native/device.rs:52:39
[INFO] [stdout]    |
[INFO] [stdout] 52 |                     Some(h_mem) => Ok(try!(context.sync_out(&h_mem, dest_data))),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/native/device.rs:59:39
[INFO] [stdout]    |
[INFO] [stdout] 59 |                     Some(h_mem) => Ok(try!(context.sync_out(&h_mem, dest_data))),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 |                         try!(API::create_context(devices.clone(), ptr::null(), callback, ptr::null_mut())),
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...   try!(API::read_from_memory(self.queue().unwrap(), source_data, true, 0, dest_data.byte_size(), dest_data.as_mut_slice().as_mut_ptr(...
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 |         Ok(try!(Memory::new(self, size)))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:96:25
[INFO] [stdout]    |
[INFO] [stdout] 96 | ...   try!(API::write_to_memory(self.queue().unwrap(), dest_data, true, 0, h_mem.byte_size(), h_mem.as_slice().as_ptr(), &[]));
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/memory.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / bitflags! {
[INFO] [stdout] 38 | |     flags MemoryFlags: cl::bitfield {
[INFO] [stdout] 39 | |         const MEM_READ_WRITE       = 1 << 0,
[INFO] [stdout] 40 | |         const MEM_WRITE_ONLY       = 1 << 1,
[INFO] [stdout] ...  |
[INFO] [stdout] 45 | |     }
[INFO] [stdout] 46 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/memory.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / bitflags! {
[INFO] [stdout] 38 | |     flags MemoryFlags: cl::bitfield {
[INFO] [stdout] 39 | |         const MEM_READ_WRITE       = 1 << 0,
[INFO] [stdout] 40 | |         const MEM_WRITE_ONLY       = 1 << 1,
[INFO] [stdout] ...  |
[INFO] [stdout] 45 | |     }
[INFO] [stdout] 46 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/queue.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / bitflags! {
[INFO] [stdout] 57 | |     #[allow(missing_docs)]
[INFO] [stdout] 58 | |     flags QueueFlags: cl::bitfield {
[INFO] [stdout] 59 | |         #[allow(missing_docs)]
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     }
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/queue.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / bitflags! {
[INFO] [stdout] 57 | |     #[allow(missing_docs)]
[INFO] [stdout] 58 | |     flags QueueFlags: cl::bitfield {
[INFO] [stdout] 59 | |         #[allow(missing_docs)]
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     }
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/context.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             try!(
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), (&mut num_devices)) });
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | ...   try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, ids.len() as cl::uint, ids.as_mut_ptr(), ptr::null_m...
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:39:108
[INFO] [stdout]    |
[INFO] [stdout] 39 |         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), (&mut num_devices)) });
[INFO] [stdout]    |                                                                                                            ^                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), (&mut num_devices)) });
[INFO] [stdout] 39 +         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), &mut num_devices) });
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(unsafe {API::ffi_get_device_info(device.id_c(), info, 0, ptr::null_mut(), &mut size)});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(unsafe {API::ffi_get_device_info(device.id_c(), info, size, buf_ptr, ptr::null_mut())});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/memory.rs:20:27
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Ok(Memory::from_c(try!(unsafe {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/memory.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Ok(try!(unsafe {API::ffi_release_mem_object(memory.id_c())}))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), (&mut num_platforms))});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), (&mut num_platforms))});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:30:68
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), (&mut num_platforms))});
[INFO] [stdout]    |                                                                    ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 30 -         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), (&mut num_platforms))});
[INFO] [stdout] 30 +         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), &mut num_platforms)});
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:34:81
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), (&mut num_platforms))});
[INFO] [stdout]    |                                                                                 ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 34 -         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), (&mut num_platforms))});
[INFO] [stdout] 34 +         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), &mut num_platforms)});
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/queue.rs:15:26
[INFO] [stdout]    |
[INFO] [stdout] 15 |         Ok(Queue::from_c(try!(unsafe {
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/queue.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |         Ok(try!(unsafe {API::ffi_release_command_queue(queue.id_c())}))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/mod.rs:71:25
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let platforms = try!(API::load_platforms());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/mod.rs:96:31
[INFO] [stdout]    |
[INFO] [stdout] 96 |         Ok(DeviceType::OpenCL(try!(Context::new(hardwares.to_vec()))))
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 try!(Driver::create_context(devices.clone())),
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 |         Ok(try!(Driver::mem_cpy_d_to_h(source_data, dest_data)))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 |         Ok(try!(Driver::mem_alloc(size)))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:95:39
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     Some(h_mem) => Ok(try!(Driver::mem_cpy_h_to_d(h_mem, dest_data))),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/device.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(unsafe {API::ffi_device_get_count(&mut device_counter)});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/device.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 try!(unsafe { API::ffi_device_get_name(name.as_mut_ptr(), 1024, device.id_c()) });
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/device.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 try!(unsafe { API::ffi_device_get_attribute(&mut value, info, device.id_c()) });
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/memory.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 |         Ok(Memory::from_c(try!(unsafe {API::ffi_mem_alloc(bytesize)})))
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/utils.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 |         Ok(try!( unsafe { API::ffi_init() }))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/mod.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 |         Ok(try!(Driver::load_devices()))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/mod.rs:80:38
[INFO] [stdout]    |
[INFO] [stdout] 80 |             1 => Ok(DeviceType::Cuda(try!(Context::new(hardwares[0].clone())))),
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/mod.rs:95:16
[INFO] [stdout]    |
[INFO] [stdout] 95 |             Ok(try!(ctx.synchronize()))
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:230:20
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let copy = try!(Self::alloc_on_device(dev, desc));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:263:28
[INFO] [stdout]     |
[INFO] [stdout] 263 |         self.latest_copy = try!(Self::alloc_on_device(self.latest_device(), desc));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:275:63
[INFO] [stdout]     |
[INFO] [stdout] 275 |             DeviceType::Native(ref cpu) => MemoryType::Native(try!(cpu.alloc_memory(alloc_size))),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:277:67
[INFO] [stdout]     |
[INFO] [stdout] 277 |             DeviceType::OpenCL(ref context) => MemoryType::OpenCL(try!(context.alloc_memory(alloc_size))),
[INFO] [stdout]     |                                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:279:63
[INFO] [stdout]     |
[INFO] [stdout] 279 |             DeviceType::Cuda(ref context) => MemoryType::Cuda(try!(context.alloc_memory(alloc_size))),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             try!(self.sync_from_to(&latest, &destination));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:291:33
[INFO] [stdout]     |
[INFO] [stdout] 291 | ...   let mut swap_copy = try!(self.copies.remove(destination).ok_or(Error::MissingDestination("Tensor does not hold a copy on destinatio...
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:330:54
[INFO] [stdout]     |
[INFO] [stdout] 330 | ...                   Some(ref mut mem) => try!(cpu.sync_in(&self.latest_location, &self.latest_copy, mem)),
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:337:54
[INFO] [stdout]     |
[INFO] [stdout] 337 | ...                   Some(ref mut mem) => try!(context.sync_in(&self.latest_location, &self.latest_copy, mem)),
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:344:54
[INFO] [stdout]     |
[INFO] [stdout] 344 | ...                   Some(ref mut mem) => try!(context.sync_in(&self.latest_location, &self.latest_copy, mem)),
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/tensor.rs:359:71
[INFO] [stdout]     |
[INFO] [stdout] 359 |     pub fn remove_copy(&mut self, destination: &DeviceType) -> Result<(MemoryType), Error> {
[INFO] [stdout]     |                                                                       ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 359 -     pub fn remove_copy(&mut self, destination: &DeviceType) -> Result<(MemoryType), Error> {
[INFO] [stdout] 359 +     pub fn remove_copy(&mut self, destination: &DeviceType) -> Result<MemoryType, Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:363:13
[INFO] [stdout]     |
[INFO] [stdout] 363 |             try!(self.sync(&first));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:390:78
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     DeviceType::Native(ref cpu) => copy = MemoryType::Native(try!(cpu.alloc_memory(Self::mem_size(self.capacity())))),
[INFO] [stdout]     |                                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:392:82
[INFO] [stdout]     |
[INFO] [stdout] 392 | ...   DeviceType::OpenCL(ref context) => copy = MemoryType::OpenCL(try!(context.alloc_memory(Self::mem_size(self.capacity())))),
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:394:78
[INFO] [stdout]     |
[INFO] [stdout] 394 |                     DeviceType::Cuda(ref context) => copy = MemoryType::Cuda(try!(context.alloc_memory(Self::mem_size(self.capacity())))),
[INFO] [stdout]     |                                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/backend.rs:69:22
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let device = try!(config.framework.new_device(config.hardwares));
[INFO] [stdout]    |                      ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/framework.rs:62:26
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn new_device(&self, &[Self::H]) -> Result<DeviceType, Error>;
[INFO] [stdout]    |                          ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::H]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/native/device.rs:52:39
[INFO] [stdout]    |
[INFO] [stdout] 52 |                     Some(h_mem) => Ok(try!(context.sync_out(&h_mem, dest_data))),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/native/device.rs:59:39
[INFO] [stdout]    |
[INFO] [stdout] 59 |                     Some(h_mem) => Ok(try!(context.sync_out(&h_mem, dest_data))),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 |                         try!(API::create_context(devices.clone(), ptr::null(), callback, ptr::null_mut())),
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...   try!(API::read_from_memory(self.queue().unwrap(), source_data, true, 0, dest_data.byte_size(), dest_data.as_mut_slice().as_mut_ptr(...
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 |         Ok(try!(Memory::new(self, size)))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/context.rs:96:25
[INFO] [stdout]    |
[INFO] [stdout] 96 | ...   try!(API::write_to_memory(self.queue().unwrap(), dest_data, true, 0, h_mem.byte_size(), h_mem.as_slice().as_ptr(), &[]));
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/memory.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / bitflags! {
[INFO] [stdout] 38 | |     flags MemoryFlags: cl::bitfield {
[INFO] [stdout] 39 | |         const MEM_READ_WRITE       = 1 << 0,
[INFO] [stdout] 40 | |         const MEM_WRITE_ONLY       = 1 << 1,
[INFO] [stdout] ...  |
[INFO] [stdout] 45 | |     }
[INFO] [stdout] 46 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/memory.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / bitflags! {
[INFO] [stdout] 38 | |     flags MemoryFlags: cl::bitfield {
[INFO] [stdout] 39 | |         const MEM_READ_WRITE       = 1 << 0,
[INFO] [stdout] 40 | |         const MEM_WRITE_ONLY       = 1 << 1,
[INFO] [stdout] ...  |
[INFO] [stdout] 45 | |     }
[INFO] [stdout] 46 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/queue.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / bitflags! {
[INFO] [stdout] 57 | |     #[allow(missing_docs)]
[INFO] [stdout] 58 | |     flags QueueFlags: cl::bitfield {
[INFO] [stdout] 59 | |         #[allow(missing_docs)]
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     }
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/queue.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / bitflags! {
[INFO] [stdout] 57 | |     #[allow(missing_docs)]
[INFO] [stdout] 58 | |     flags QueueFlags: cl::bitfield {
[INFO] [stdout] 59 | |         #[allow(missing_docs)]
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     }
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/context.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             try!(
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), (&mut num_devices)) });
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | ...   try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, ids.len() as cl::uint, ids.as_mut_ptr(), ptr::null_m...
[INFO] [stdout]    |       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:39:108
[INFO] [stdout]    |
[INFO] [stdout] 39 |         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), (&mut num_devices)) });
[INFO] [stdout]    |                                                                                                            ^                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 39 -         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), (&mut num_devices)) });
[INFO] [stdout] 39 +         try!(unsafe { API::ffi_get_device_ids(platform.id_c(), cl::CL_DEVICE_TYPE_ALL, 0, ptr::null_mut(), &mut num_devices) });
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(unsafe {API::ffi_get_device_info(device.id_c(), info, 0, ptr::null_mut(), &mut size)});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/device.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(unsafe {API::ffi_get_device_info(device.id_c(), info, size, buf_ptr, ptr::null_mut())});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/memory.rs:20:27
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Ok(Memory::from_c(try!(unsafe {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/memory.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 |         Ok(try!(unsafe {API::ffi_release_mem_object(memory.id_c())}))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), (&mut num_platforms))});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), (&mut num_platforms))});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:30:68
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), (&mut num_platforms))});
[INFO] [stdout]    |                                                                    ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 30 -         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), (&mut num_platforms))});
[INFO] [stdout] 30 +         try!(unsafe {API::ffi_get_platform_ids(0, ptr::null_mut(), &mut num_platforms)});
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:34:81
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), (&mut num_platforms))});
[INFO] [stdout]    |                                                                                 ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 34 -         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), (&mut num_platforms))});
[INFO] [stdout] 34 +         try!(unsafe {API::ffi_get_platform_ids(num_platforms, ids.as_mut_ptr(), &mut num_platforms)});
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/queue.rs:15:26
[INFO] [stdout]    |
[INFO] [stdout] 15 |         Ok(Queue::from_c(try!(unsafe {
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/api/queue.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 |         Ok(try!(unsafe {API::ffi_release_command_queue(queue.id_c())}))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/mod.rs:71:25
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let platforms = try!(API::load_platforms());
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/opencl/mod.rs:96:31
[INFO] [stdout]    |
[INFO] [stdout] 96 |         Ok(DeviceType::OpenCL(try!(Context::new(hardwares.to_vec()))))
[INFO] [stdout]    |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 try!(Driver::create_context(devices.clone())),
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 |         Ok(try!(Driver::mem_cpy_d_to_h(source_data, dest_data)))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 |         Ok(try!(Driver::mem_alloc(size)))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/context.rs:95:39
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     Some(h_mem) => Ok(try!(Driver::mem_cpy_h_to_d(h_mem, dest_data))),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/device.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(unsafe {API::ffi_device_get_count(&mut device_counter)});
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/device.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 try!(unsafe { API::ffi_device_get_name(name.as_mut_ptr(), 1024, device.id_c()) });
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/device.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 try!(unsafe { API::ffi_device_get_attribute(&mut value, info, device.id_c()) });
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/memory.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 |         Ok(Memory::from_c(try!(unsafe {API::ffi_mem_alloc(bytesize)})))
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/api/driver/utils.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 |         Ok(try!( unsafe { API::ffi_init() }))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/mod.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 |         Ok(try!(Driver::load_devices()))
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/mod.rs:80:38
[INFO] [stdout]    |
[INFO] [stdout] 80 |             1 => Ok(DeviceType::Cuda(try!(Context::new(hardwares[0].clone())))),
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/frameworks/cuda/mod.rs:95:16
[INFO] [stdout]    |
[INFO] [stdout] 95 |             Ok(try!(ctx.synchronize()))
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:230:20
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let copy = try!(Self::alloc_on_device(dev, desc));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:263:28
[INFO] [stdout]     |
[INFO] [stdout] 263 |         self.latest_copy = try!(Self::alloc_on_device(self.latest_device(), desc));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:275:63
[INFO] [stdout]     |
[INFO] [stdout] 275 |             DeviceType::Native(ref cpu) => MemoryType::Native(try!(cpu.alloc_memory(alloc_size))),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:277:67
[INFO] [stdout]     |
[INFO] [stdout] 277 |             DeviceType::OpenCL(ref context) => MemoryType::OpenCL(try!(context.alloc_memory(alloc_size))),
[INFO] [stdout]     |                                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:279:63
[INFO] [stdout]     |
[INFO] [stdout] 279 |             DeviceType::Cuda(ref context) => MemoryType::Cuda(try!(context.alloc_memory(alloc_size))),
[INFO] [stdout]     |                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             try!(self.sync_from_to(&latest, &destination));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:291:33
[INFO] [stdout]     |
[INFO] [stdout] 291 | ...   let mut swap_copy = try!(self.copies.remove(destination).ok_or(Error::MissingDestination("Tensor does not hold a copy on destinatio...
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:330:54
[INFO] [stdout]     |
[INFO] [stdout] 330 | ...                   Some(ref mut mem) => try!(cpu.sync_in(&self.latest_location, &self.latest_copy, mem)),
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:337:54
[INFO] [stdout]     |
[INFO] [stdout] 337 | ...                   Some(ref mut mem) => try!(context.sync_in(&self.latest_location, &self.latest_copy, mem)),
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:344:54
[INFO] [stdout]     |
[INFO] [stdout] 344 | ...                   Some(ref mut mem) => try!(context.sync_in(&self.latest_location, &self.latest_copy, mem)),
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/tensor.rs:359:71
[INFO] [stdout]     |
[INFO] [stdout] 359 |     pub fn remove_copy(&mut self, destination: &DeviceType) -> Result<(MemoryType), Error> {
[INFO] [stdout]     |                                                                       ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 359 -     pub fn remove_copy(&mut self, destination: &DeviceType) -> Result<(MemoryType), Error> {
[INFO] [stdout] 359 +     pub fn remove_copy(&mut self, destination: &DeviceType) -> Result<MemoryType, Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:363:13
[INFO] [stdout]     |
[INFO] [stdout] 363 |             try!(self.sync(&first));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:390:78
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     DeviceType::Native(ref cpu) => copy = MemoryType::Native(try!(cpu.alloc_memory(Self::mem_size(self.capacity())))),
[INFO] [stdout]     |                                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:392:82
[INFO] [stdout]     |
[INFO] [stdout] 392 | ...   DeviceType::OpenCL(ref context) => copy = MemoryType::OpenCL(try!(context.alloc_memory(Self::mem_size(self.capacity())))),
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/tensor.rs:394:78
[INFO] [stdout]     |
[INFO] [stdout] 394 |                     DeviceType::Cuda(ref context) => copy = MemoryType::Cuda(try!(context.alloc_memory(Self::mem_size(self.capacity())))),
[INFO] [stdout]     |                                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | /         lazy_static! {
[INFO] [stdout] 26 | |             static ref PLATFORM_MUTEX: Mutex<()> = Mutex::new(());
[INFO] [stdout] 27 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | /         lazy_static! {
[INFO] [stdout] 26 | |             static ref PLATFORM_MUTEX: Mutex<()> = Mutex::new(());
[INFO] [stdout] 27 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/device.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/framework.rs:101:32
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/frameworks/native/error.rs:27:32
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/frameworks/opencl/api/error.rs:107:32
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | /         lazy_static! {
[INFO] [stdout] 26 | |             static ref PLATFORM_MUTEX: Mutex<()> = Mutex::new(());
[INFO] [stdout] 27 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | /         lazy_static! {
[INFO] [stdout] 26 | |             static ref PLATFORM_MUTEX: Mutex<()> = Mutex::new(());
[INFO] [stdout] 27 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/error.rs:251:32
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/device.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/framework.rs:101:32
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/frameworks/native/error.rs:27:32
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/tensor.rs:473:32
[INFO] [stdout]     |
[INFO] [stdout] 473 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 473 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:39:32
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:69:32
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn cause(&self) -> Option<&::std::error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn cause(&self) -> Option<&dyn (::std::error::Error)> {
[INFO] [stdout]    |                                +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/frameworks/opencl/api/error.rs:107:32
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/error.rs:251:32
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 251 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/device.rs:98:43
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Error::Native(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/device.rs:100:43
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Error::OpenCL(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/device.rs:102:41
[INFO] [stdout]     |
[INFO] [stdout] 102 |             Error::Cuda(ref err) => err.description(),
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/framework.rs:94:43
[INFO] [stdout]    |
[INFO] [stdout] 94 |             Error::OpenCL(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/framework.rs:96:41
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Error::Cuda(ref err) => err.description(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/tensor.rs:473:32
[INFO] [stdout]     |
[INFO] [stdout] 473 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 473 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:39:32
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:69:32
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn cause(&self) -> Option<&::std::error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 |     fn cause(&self) -> Option<&dyn (::std::error::Error)> {
[INFO] [stdout]    |                                +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/device.rs:98:43
[INFO] [stdout]    |
[INFO] [stdout] 98 |             Error::Native(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/device.rs:100:43
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Error::OpenCL(ref err) => err.description(),
[INFO] [stdout]     |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/device.rs:102:41
[INFO] [stdout]     |
[INFO] [stdout] 102 |             Error::Cuda(ref err) => err.description(),
[INFO] [stdout]     |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/framework.rs:94:43
[INFO] [stdout]    |
[INFO] [stdout] 94 |             Error::OpenCL(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/framework.rs:96:41
[INFO] [stdout]    |
[INFO] [stdout] 96 |             Error::Cuda(ref err) => err.description(),
[INFO] [stdout]    |                                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tensor.rs:467:58
[INFO] [stdout]     |
[INFO] [stdout] 467 |             Error::MemoryAllocationError(ref err) => err.description(),
[INFO] [stdout]     |                                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tensor.rs:468:63
[INFO] [stdout]     |
[INFO] [stdout] 468 |             Error::MemorySynchronizationError(ref err) => err.description(),
[INFO] [stdout]     |                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:32:46
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Error::Framework(ref err) => err.description(),
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:33:43
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Error::Tensor(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:34:43
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Error::Plugin(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:35:43
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::Device(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IDevice`
[INFO] [stdout]   --> src/backend.rs:45:14
[INFO] [stdout]    |
[INFO] [stdout] 45 | use device::{IDevice, DeviceType};
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/frameworks/cuda/api/driver/device.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use byteorder::{ByteOrder, LittleEndian, WriteBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/frameworks/opencl/device.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/frameworks/cuda/device.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tensor.rs:467:58
[INFO] [stdout]     |
[INFO] [stdout] 467 |             Error::MemoryAllocationError(ref err) => err.description(),
[INFO] [stdout]     |                                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/tensor.rs:468:63
[INFO] [stdout]     |
[INFO] [stdout] 468 |             Error::MemorySynchronizationError(ref err) => err.description(),
[INFO] [stdout]     |                                                               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:32:46
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Error::Framework(ref err) => err.description(),
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:33:43
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Error::Tensor(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:34:43
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Error::Plugin(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:35:43
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::Device(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IDevice`
[INFO] [stdout]   --> src/backend.rs:45:14
[INFO] [stdout]    |
[INFO] [stdout] 45 | use device::{IDevice, DeviceType};
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/frameworks/cuda/api/driver/device.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use byteorder::{ByteOrder, LittleEndian, WriteBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/frameworks/opencl/device.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/frameworks/cuda/device.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use byteorder::{ByteOrder, LittleEndian, ReadBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tensor.rs:325:22
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 Some(mut destination_copy) => {
[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: panic message is not a string literal
[INFO] [stdout]   --> src/frameworks/native/mod.rs:61:32
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Err(err) => panic!(err)
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Err(err) => panic!("{}", err)
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Err(err) => std::panic::panic_any(err)
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]   --> src/frameworks/native/flatbox.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             Box::from_raw(self.raw_box);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let _ = Box::from_raw(self.raw_box);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/frameworks/opencl/mod.rs:66:32
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Err(err) => panic!(err)
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Err(err) => panic!("{}", err)
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Err(err) => std::panic::panic_any(err)
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-binding let on a synchronization lock
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _ = guard;
[INFO] [stdout]    |             ^ this lock is not assigned to a binding and is immediately dropped
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(let_underscore_lock)]` on by default
[INFO] [stdout] help: consider binding to an unused variable to avoid immediately dropping the value
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _unused = guard;
[INFO] [stdout]    |             ~~~~~~~
[INFO] [stdout] help: consider immediately dropping the value
[INFO] [stdout]    |
[INFO] [stdout] 36 |         drop(guard);
[INFO] [stdout]    |         ~~~~~     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type could implement `Copy`; consider adding `impl Copy`
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/ffi.rs:596:1
[INFO] [stdout]     |
[INFO] [stdout] 596 | pub enum Struct_CUctx_st { }
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |         missing_debug_implementations, missing_copy_implementations,
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type does not implement `Debug`; consider adding `#[derive(Debug)]` or a manual implementation
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/ffi.rs:596:1
[INFO] [stdout]     |
[INFO] [stdout] 596 | pub enum Struct_CUctx_st { }
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 143 |         missing_debug_implementations, missing_copy_implementations,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type could implement `Copy`; consider adding `impl Copy`
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/ffi.rs:709:1
[INFO] [stdout]     |
[INFO] [stdout] 709 | / pub enum CUdevice_attribute {
[INFO] [stdout] 710 | |     CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK = 1,
[INFO] [stdout] 711 | |     CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X = 2,
[INFO] [stdout] 712 | |     CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y = 3,
[INFO] [stdout] ...   |
[INFO] [stdout] 798 | |     CU_DEVICE_MEMORY_TOTAL = 1000,
[INFO] [stdout] 799 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 84 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `collenchyma` (lib test) due to 5 previous errors; 84 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tensor.rs:325:22
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 Some(mut destination_copy) => {
[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: panic message is not a string literal
[INFO] [stdout]   --> src/frameworks/native/mod.rs:61:32
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Err(err) => panic!(err)
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Err(err) => panic!("{}", err)
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 61 |             Err(err) => std::panic::panic_any(err)
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]   --> src/frameworks/native/flatbox.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             Box::from_raw(self.raw_box);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 56 |             let _ = Box::from_raw(self.raw_box);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/frameworks/opencl/mod.rs:66:32
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Err(err) => panic!(err)
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Err(err) => panic!("{}", err)
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 66 |             Err(err) => std::panic::panic_any(err)
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-binding let on a synchronization lock
[INFO] [stdout]   --> src/frameworks/opencl/api/platform.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _ = guard;
[INFO] [stdout]    |             ^ this lock is not assigned to a binding and is immediately dropped
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(let_underscore_lock)]` on by default
[INFO] [stdout] help: consider binding to an unused variable to avoid immediately dropping the value
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _unused = guard;
[INFO] [stdout]    |             ~~~~~~~
[INFO] [stdout] help: consider immediately dropping the value
[INFO] [stdout]    |
[INFO] [stdout] 36 |         drop(guard);
[INFO] [stdout]    |         ~~~~~     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type could implement `Copy`; consider adding `impl Copy`
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/ffi.rs:596:1
[INFO] [stdout]     |
[INFO] [stdout] 596 | pub enum Struct_CUctx_st { }
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |         missing_debug_implementations, missing_copy_implementations,
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type does not implement `Debug`; consider adding `#[derive(Debug)]` or a manual implementation
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/ffi.rs:596:1
[INFO] [stdout]     |
[INFO] [stdout] 596 | pub enum Struct_CUctx_st { }
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 143 |         missing_debug_implementations, missing_copy_implementations,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type could implement `Copy`; consider adding `impl Copy`
[INFO] [stdout]    --> src/frameworks/cuda/api/driver/ffi.rs:709:1
[INFO] [stdout]     |
[INFO] [stdout] 709 | / pub enum CUdevice_attribute {
[INFO] [stdout] 710 | |     CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK = 1,
[INFO] [stdout] 711 | |     CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X = 2,
[INFO] [stdout] 712 | |     CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y = 3,
[INFO] [stdout] ...   |
[INFO] [stdout] 798 | |     CU_DEVICE_MEMORY_TOTAL = 1000,
[INFO] [stdout] 799 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 84 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `collenchyma` (lib) due to 5 previous errors; 84 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "9d567aac28276258117d8c65ce45fc731abdcd44d82d8f811667bb701e134fbb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9d567aac28276258117d8c65ce45fc731abdcd44d82d8f811667bb701e134fbb", kill_on_drop: false }`
[INFO] [stdout] 9d567aac28276258117d8c65ce45fc731abdcd44d82d8f811667bb701e134fbb
