[INFO] cloning repository https://github.com/hajifkd/virtual_ip_host [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hajifkd/virtual_ip_host" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhajifkd%2Fvirtual_ip_host", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhajifkd%2Fvirtual_ip_host'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ad476da02542f1fbd6b76e615007f82a703df4df [INFO] checking hajifkd/virtual_ip_host against try#51b1964e35e5e26f8cd938940f0da6f7b5cc54fc for pr-138176 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhajifkd%2Fvirtual_ip_host" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] fatal: update_ref failed for ref 'HEAD': cannot update the ref 'refs/heads/master': unable to create directory for '/workspace/builds/worker-4-tc2/source/.git/logs/refs/heads/master': No such file or directory [INFO] checking hajifkd/virtual_ip_host against try#51b1964e35e5e26f8cd938940f0da6f7b5cc54fc for pr-138176 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhajifkd%2Fvirtual_ip_host" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] error: unable to write symref for refs/remotes/origin/HEAD: No space left on device [INFO] [stderr] fatal: unable to update refs/remotes/origin/HEAD [INFO] checking hajifkd/virtual_ip_host against try#51b1964e35e5e26f8cd938940f0da6f7b5cc54fc for pr-138176 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhajifkd%2Fvirtual_ip_host" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/hajifkd/virtual_ip_host on toolchain 51b1964e35e5e26f8cd938940f0da6f7b5cc54fc [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+51b1964e35e5e26f8cd938940f0da6f7b5cc54fc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config [INFO] started tweaking git repo https://github.com/hajifkd/virtual_ip_host [INFO] finished tweaking git repo https://github.com/hajifkd/virtual_ip_host [INFO] tweaked toml for git repo https://github.com/hajifkd/virtual_ip_host written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+51b1964e35e5e26f8cd938940f0da6f7b5cc54fc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 40 packages to latest compatible versions [INFO] [stderr] Adding futures-channel-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] [stderr] Adding futures-core-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] [stderr] Adding futures-executor-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] [stderr] Adding futures-io-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] [stderr] Adding futures-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] [stderr] Adding futures-sink-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] [stderr] Adding futures-util-preview v0.3.0-alpha.17 (available: v0.3.0-alpha.19) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+51b1964e35e5e26f8cd938940f0da6f7b5cc54fc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+51b1964e35e5e26f8cd938940f0da6f7b5cc54fc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 309e074749dc5086d0b264bb3a9bb32034e14936b9afbae55d99c33c505f9e5d [INFO] running `Command { std: "docker" "start" "-a" "309e074749dc5086d0b264bb3a9bb32034e14936b9afbae55d99c33c505f9e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "309e074749dc5086d0b264bb3a9bb32034e14936b9afbae55d99c33c505f9e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "309e074749dc5086d0b264bb3a9bb32034e14936b9afbae55d99c33c505f9e5d", kill_on_drop: false }` [INFO] [stdout] 309e074749dc5086d0b264bb3a9bb32034e14936b9afbae55d99c33c505f9e5d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+51b1964e35e5e26f8cd938940f0da6f7b5cc54fc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7dcfcef2356e94e7b2c7c9b6b3551fa191abea368ea8f005ea94b4a8e89c5217 [INFO] running `Command { std: "docker" "start" "-a" "7dcfcef2356e94e7b2c7c9b6b3551fa191abea368ea8f005ea94b4a8e89c5217", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling libc v0.2.170 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking futures-core-preview v0.3.0-alpha.17 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Checking futures-io-preview v0.3.0-alpha.17 [INFO] [stderr] Checking gimli v0.31.1 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Checking adler2 v2.0.0 [INFO] [stderr] Checking rustc-demangle v0.1.24 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking map_struct v0.3.0 [INFO] [stderr] Checking futures-sink-preview v0.3.0-alpha.17 [INFO] [stderr] Checking miniz_oxide v0.8.5 [INFO] [stderr] Checking futures-channel-preview v0.3.0-alpha.17 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking futures-util-preview v0.3.0-alpha.17 [INFO] [stderr] Compiling quote v1.0.39 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking addr2line v0.24.2 [INFO] [stderr] Checking futures-executor-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-preview v0.3.0-alpha.17 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Checking backtrace v0.3.74 [INFO] [stderr] Checking failure v0.1.8 [INFO] [stderr] Checking virtual_ip_host v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `write` [INFO] [stdout] --> src/socket/mod.rs:2:85 [INFO] [stdout] | [INFO] [stdout] 2 | bind, c_int, ioctl, packet_mreq, recv, sendto, setsockopt, sockaddr_ll, socket, write, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:28:50 [INFO] [stdout] | [INFO] [stdout] 28 | let mut if_req: ifreq::ifreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:45:45 [INFO] [stdout] | [INFO] [stdout] 45 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:66:46 [INFO] [stdout] | [INFO] [stdout] 66 | let mut opt: packet_mreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:97:45 [INFO] [stdout] | [INFO] [stdout] 97 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `write` [INFO] [stdout] --> src/socket/mod.rs:2:85 [INFO] [stdout] | [INFO] [stdout] 2 | bind, c_int, ioctl, packet_mreq, recv, sendto, setsockopt, sockaddr_ll, socket, write, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:28:50 [INFO] [stdout] | [INFO] [stdout] 28 | let mut if_req: ifreq::ifreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:45:45 [INFO] [stdout] | [INFO] [stdout] 45 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:66:46 [INFO] [stdout] | [INFO] [stdout] 66 | let mut opt: packet_mreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/socket/mod.rs:97:45 [INFO] [stdout] | [INFO] [stdout] 97 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/ip/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 71 | unimplemented!(); [INFO] [stdout] | ---------------- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 74 | result [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/ip/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 71 | unimplemented!(); [INFO] [stdout] | ---------------- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 74 | result [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ip_header` [INFO] [stdout] --> src/ip/mod.rs:70:14 [INFO] [stdout] | [INFO] [stdout] 70 | let (ip_header, payload) = IpHeaderWithoutOptions::mapped_mut(&mut result).unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ip_header` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `payload` [INFO] [stdout] --> src/ip/mod.rs:70:25 [INFO] [stdout] | [INFO] [stdout] 70 | let (ip_header, payload) = IpHeaderWithoutOptions::mapped_mut(&mut result).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_payload` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `proto` [INFO] [stdout] --> src/ip/mod.rs:67:21 [INFO] [stdout] | [INFO] [stdout] 67 | fn construct_packet(proto: u8, dst: IpAddress, payload: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_proto` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dst` [INFO] [stdout] --> src/ip/mod.rs:67:32 [INFO] [stdout] | [INFO] [stdout] 67 | fn construct_packet(proto: u8, dst: IpAddress, payload: &[u8]) -> Vec { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_dst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `my_addr` is never read [INFO] [stdout] --> src/ip/mod.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct IpDriver { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 63 | my_addr: IpAddress, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/arp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ArpError` [INFO] [stdout] 2 | pub enum ArpError { [INFO] [stdout] | -------- `ArpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/arp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ArpError` [INFO] [stdout] 2 | pub enum ArpError { [INFO] [stdout] | -------- `ArpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_IpError` [INFO] [stdout] 2 | pub enum IpError { [INFO] [stdout] | ------- `IpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_IpError` [INFO] [stdout] 2 | pub enum IpError { [INFO] [stdout] | ------- `IpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/icmp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_IcmpError` [INFO] [stdout] 2 | pub enum IcmpError { [INFO] [stdout] | --------- `IcmpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/icmp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_IcmpError` [INFO] [stdout] 2 | pub enum IcmpError { [INFO] [stdout] | --------- `IcmpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `socket::ifreq::ifreq` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:28:40 [INFO] [stdout] | [INFO] [stdout] 28 | let mut if_req: ifreq::ifreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: integers must be initialized (in this struct field) [INFO] [stdout] --> src/socket/ifreq.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub ifr_name: [c_char; IFNAMSIZ], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `sockaddr_ll` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:45:35 [INFO] [stdout] | [INFO] [stdout] 45 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `packet_mreq` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:66:36 [INFO] [stdout] | [INFO] [stdout] 66 | let mut opt: packet_mreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `sockaddr_ll` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:97:35 [INFO] [stdout] | [INFO] [stdout] 97 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ip_header` [INFO] [stdout] --> src/ip/mod.rs:70:14 [INFO] [stdout] | [INFO] [stdout] 70 | let (ip_header, payload) = IpHeaderWithoutOptions::mapped_mut(&mut result).unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ip_header` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `payload` [INFO] [stdout] --> src/ip/mod.rs:70:25 [INFO] [stdout] | [INFO] [stdout] 70 | let (ip_header, payload) = IpHeaderWithoutOptions::mapped_mut(&mut result).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_payload` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `proto` [INFO] [stdout] --> src/ip/mod.rs:67:21 [INFO] [stdout] | [INFO] [stdout] 67 | fn construct_packet(proto: u8, dst: IpAddress, payload: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_proto` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dst` [INFO] [stdout] --> src/ip/mod.rs:67:32 [INFO] [stdout] | [INFO] [stdout] 67 | fn construct_packet(proto: u8, dst: IpAddress, payload: &[u8]) -> Vec { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_dst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `my_addr` is never read [INFO] [stdout] --> src/ip/mod.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct IpDriver { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 63 | my_addr: IpAddress, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/arp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ArpError` [INFO] [stdout] 2 | pub enum ArpError { [INFO] [stdout] | -------- `ArpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/arp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ArpError` [INFO] [stdout] 2 | pub enum ArpError { [INFO] [stdout] | -------- `ArpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_IpError` [INFO] [stdout] 2 | pub enum IpError { [INFO] [stdout] | ------- `IpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_IpError` [INFO] [stdout] 2 | pub enum IpError { [INFO] [stdout] | ------- `IpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/icmp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_IcmpError` [INFO] [stdout] 2 | pub enum IcmpError { [INFO] [stdout] | --------- `IcmpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/ip/icmp/error.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_IcmpError` [INFO] [stdout] 2 | pub enum IcmpError { [INFO] [stdout] | --------- `IcmpError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `socket::ifreq::ifreq` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:28:40 [INFO] [stdout] | [INFO] [stdout] 28 | let mut if_req: ifreq::ifreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: integers must be initialized (in this struct field) [INFO] [stdout] --> src/socket/ifreq.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub ifr_name: [c_char; IFNAMSIZ], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `sockaddr_ll` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:45:35 [INFO] [stdout] | [INFO] [stdout] 45 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `packet_mreq` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:66:36 [INFO] [stdout] | [INFO] [stdout] 66 | let mut opt: packet_mreq = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `sockaddr_ll` does not permit being left uninitialized [INFO] [stdout] --> src/socket/mod.rs:97:35 [INFO] [stdout] | [INFO] [stdout] 97 | let mut sa: sockaddr_ll = std::mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.48s [INFO] running `Command { std: "docker" "inspect" "7dcfcef2356e94e7b2c7c9b6b3551fa191abea368ea8f005ea94b4a8e89c5217", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7dcfcef2356e94e7b2c7c9b6b3551fa191abea368ea8f005ea94b4a8e89c5217", kill_on_drop: false }` [INFO] [stdout] 7dcfcef2356e94e7b2c7c9b6b3551fa191abea368ea8f005ea94b4a8e89c5217