[INFO] fetching crate nf 0.1.0...
[INFO] building nf-0.1.0 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate nf 0.1.0 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate nf 0.1.0
[INFO] finished tweaking crates.io crate nf 0.1.0
[INFO] tweaked toml for crates.io crate nf 0.1.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate nf 0.1.0 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate nf 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3cfd0f2a12b7733504e71a15cdaa40b4767c87cf8972f964e2cb3677b48f0794
[INFO] running `Command { std: "docker" "start" "-a" "3cfd0f2a12b7733504e71a15cdaa40b4767c87cf8972f964e2cb3677b48f0794", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3cfd0f2a12b7733504e71a15cdaa40b4767c87cf8972f964e2cb3677b48f0794", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3cfd0f2a12b7733504e71a15cdaa40b4767c87cf8972f964e2cb3677b48f0794", kill_on_drop: false }`
[INFO] [stdout] 3cfd0f2a12b7733504e71a15cdaa40b4767c87cf8972f964e2cb3677b48f0794
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cf7b236aa4ab8121bb356327c2f0a5b1746c79c9523dcae830096323f77a5535
[INFO] running `Command { std: "docker" "start" "-a" "cf7b236aa4ab8121bb356327c2f0a5b1746c79c9523dcae830096323f77a5535", kill_on_drop: false }`
[INFO] [stderr]    Compiling nf v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/mnl/attr.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 365 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 365 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout] 366 |             fprintf(fd, tp!("|  %.010u  |\t| message length |\n"), self.len);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 369 |                 tp!("| %.05u | %c%c%c%c |\t|  type | flags  |\n"),
[INFO] [stdout]     |                 ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 392 |             fprintf(fd, tp!("|  %.010u  |\t| sequence number|\n"), self.seq);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 393 |             fprintf(fd, tp!("|  %.010u  |\t|     port ID    |\n"), self.pid);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 394 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 450 |                 tp!("|%.5u|%c%c|%.5u|\t"),
[INFO] [stdout]     |                 ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/mnl/nlmsg.rs:477:31
[INFO] [stdout]     |
[INFO] [stdout] 477 |             let colorize = if let Ok(fdnum) = fileno(fd).try_into() {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 500 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 506 |                     fprintf(fd, tp!("|                |\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 512 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 518 |                     fprintf(fd, tp!("|  extra header  |\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 526 |                     fprintf(fd, tp!("|len |flags| type|\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 537 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 543 |                     fprintf(fd, tp!("|      data      |"));
[INFO] [stdout]     |                                 ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 552 |                         tp!("\t %c %c %c %c\n"),
[INFO] [stdout]     |                         ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 561 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 407 |                 tp!("|%c[%d;%dm%.5u%c[%dm|%c[%d;%dm%c%c%c[%dm|%c[%d;%dm%.5u%c[%dm|\t"),
[INFO] [stdout]     |                 ---------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/mnl/nlmsg.rs:574:9
[INFO] [stdout]     |
[INFO] [stdout] 574 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/mnl/nlmsg.rs:573:13
[INFO] [stdout]     |
[INFO] [stdout] 573 |         let mut remaining = len;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.49s
[INFO] running `Command { std: "docker" "inspect" "cf7b236aa4ab8121bb356327c2f0a5b1746c79c9523dcae830096323f77a5535", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf7b236aa4ab8121bb356327c2f0a5b1746c79c9523dcae830096323f77a5535", kill_on_drop: false }`
[INFO] [stdout] cf7b236aa4ab8121bb356327c2f0a5b1746c79c9523dcae830096323f77a5535
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6ba081b474d5dbf0b84785657c6a90e37a582b0cb6236529f0cc035f4eb298a1
[INFO] running `Command { std: "docker" "start" "-a" "6ba081b474d5dbf0b84785657c6a90e37a582b0cb6236529f0cc035f4eb298a1", kill_on_drop: false }`
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/mnl/attr.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 365 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nf v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 365 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout] 366 |             fprintf(fd, tp!("|  %.010u  |\t| message length |\n"), self.len);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 369 |                 tp!("| %.05u | %c%c%c%c |\t|  type | flags  |\n"),
[INFO] [stdout]     |                 ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 392 |             fprintf(fd, tp!("|  %.010u  |\t| sequence number|\n"), self.seq);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 393 |             fprintf(fd, tp!("|  %.010u  |\t|     port ID    |\n"), self.pid);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 394 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 450 |                 tp!("|%.5u|%c%c|%.5u|\t"),
[INFO] [stdout]     |                 ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/mnl/nlmsg.rs:477:31
[INFO] [stdout]     |
[INFO] [stdout] 477 |             let colorize = if let Ok(fdnum) = fileno(fd).try_into() {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 500 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 506 |                     fprintf(fd, tp!("|                |\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 512 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 518 |                     fprintf(fd, tp!("|  extra header  |\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 526 |                     fprintf(fd, tp!("|len |flags| type|\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 537 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 543 |                     fprintf(fd, tp!("|      data      |"));
[INFO] [stdout]     |                                 ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 552 |                         tp!("\t %c %c %c %c\n"),
[INFO] [stdout]     |                         ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 561 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 407 |                 tp!("|%c[%d;%dm%.5u%c[%dm|%c[%d;%dm%c%c%c[%dm|%c[%d;%dm%.5u%c[%dm|\t"),
[INFO] [stdout]     |                 ---------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/mnl/nlmsg.rs:574:9
[INFO] [stdout]     |
[INFO] [stdout] 574 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/mnl/nlmsg.rs:573:13
[INFO] [stdout]     |
[INFO] [stdout] 573 |         let mut remaining = len;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/mnl/attr.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 365 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] 365 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout] 366 |             fprintf(fd, tp!("|  %.010u  |\t| message length |\n"), self.len);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 369 |                 tp!("| %.05u | %c%c%c%c |\t|  type | flags  |\n"),
[INFO] [stdout]     |                 ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 392 |             fprintf(fd, tp!("|  %.010u  |\t| sequence number|\n"), self.seq);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 393 |             fprintf(fd, tp!("|  %.010u  |\t|     port ID    |\n"), self.pid);
[INFO] [stdout]     |                         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 394 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 407 |                 tp!("|%c[%d;%dm%.5u%c[%dm|%c[%d;%dm%c%c%c[%dm|%c[%d;%dm%.5u%c[%dm|\t"),
[INFO] [stdout]     |                 ---------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 450 |                 tp!("|%.5u|%c%c|%.5u|\t"),
[INFO] [stdout]     |                 ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/mnl/nlmsg.rs:477:31
[INFO] [stdout]     |
[INFO] [stdout] 477 |             let colorize = if let Ok(fdnum) = fileno(fd).try_into() {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 500 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 506 |                     fprintf(fd, tp!("|                |\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 512 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 518 |                     fprintf(fd, tp!("|  extra header  |\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 526 |                     fprintf(fd, tp!("|len |flags| type|\n"));
[INFO] [stdout]     |                                 --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 537 |                         tp!("| %.2x %.2x %.2x %.2x  |\t"),
[INFO] [stdout]     |                         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 543 |                     fprintf(fd, tp!("|      data      |"));
[INFO] [stdout]     |                                 ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 552 |                         tp!("\t %c %c %c %c\n"),
[INFO] [stdout]     |                         ----------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:6:7
[INFO] [stdout]     |
[INFO] [stdout]   6 |       unsafe {  core::mem::transmute::<&[u8],&[i8]>(&str::as_bytes(concat!($($t)*,"\0"))).as_ptr() as *const i8 }
[INFO] [stdout]     |       ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/mnl/nlmsg.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         unsafe {
[INFO] [stdout]     |         ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 561 |             fprintf(fd, tp!("----------------\t------------------\n"));
[INFO] [stdout]     |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `tp` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/mnl/nlmsg.rs:574:9
[INFO] [stdout]     |
[INFO] [stdout] 574 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/mnl/nlmsg.rs:573:13
[INFO] [stdout]     |
[INFO] [stdout] 573 |         let mut remaining = len;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.73s
[INFO] running `Command { std: "docker" "inspect" "6ba081b474d5dbf0b84785657c6a90e37a582b0cb6236529f0cc035f4eb298a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ba081b474d5dbf0b84785657c6a90e37a582b0cb6236529f0cc035f4eb298a1", kill_on_drop: false }`
[INFO] [stdout] 6ba081b474d5dbf0b84785657c6a90e37a582b0cb6236529f0cc035f4eb298a1
