[INFO] fetching crate fourleaf 0.1.1...
[INFO] testing fourleaf-0.1.1 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-7
[INFO] extracting crate fourleaf 0.1.1 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate fourleaf 0.1.1
[INFO] finished tweaking crates.io crate fourleaf 0.1.1
[INFO] tweaked toml for crates.io crate fourleaf 0.1.1 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate fourleaf 0.1.1 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 1 package to latest compatible version
[INFO] [stderr]       Adding quick-error v1.2.3 (available: v2.0.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 65e58532b0341621fedbf03feb09edcb3c75bf2f3dfd642a9d93a6cdffe778fa
[INFO] running `Command { std: "docker" "start" "-a" "65e58532b0341621fedbf03feb09edcb3c75bf2f3dfd642a9d93a6cdffe778fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "65e58532b0341621fedbf03feb09edcb3c75bf2f3dfd642a9d93a6cdffe778fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65e58532b0341621fedbf03feb09edcb3c75bf2f3dfd642a9d93a6cdffe778fa", kill_on_drop: false }`
[INFO] [stdout] 65e58532b0341621fedbf03feb09edcb3c75bf2f3dfd642a9d93a6cdffe778fa
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 05e34f0e6352ea151288b6969eb9fb73dcf4894489082673da052a1a41f62e3d
[INFO] running `Command { std: "docker" "start" "-a" "05e34f0e6352ea151288b6969eb9fb73dcf4894489082673da052a1a41f62e3d", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling fourleaf v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:41:1
[INFO] [stdout]     |
[INFO] [stdout]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stdout]  42 | |     |_context|
[INFO] [stdout]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stdout]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stdout] ...   |
[INFO] [stdout]  50 | |     },
[INFO] [stdout]  51 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:41:1
[INFO] [stdout]     |
[INFO] [stdout]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stdout]  42 | |     |_context|
[INFO] [stdout]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stdout]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stdout] ...   |
[INFO] [stdout]  50 | |     },
[INFO] [stdout]  51 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout]  53 | / fourleaf_retrofit!(struct Duration : {} {} {
[INFO] [stdout]  54 | |     |context, this|
[INFO] [stdout]  55 | |     [1] secs: u64 = this.as_secs(),
[INFO] [stdout]  56 | |     [2] nsecs: u32 = this.subsec_nanos(),
[INFO] [stdout] ...   |
[INFO] [stdout]  62 | |     } }
[INFO] [stdout]  63 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:65:1
[INFO] [stdout]     |
[INFO] [stdout]  65 | / fourleaf_retrofit!(struct SocketAddrV4 : {} {} {
[INFO] [stdout]  66 | |     |_context, this|
[INFO] [stdout]  67 | |     [1] ip: Ipv4Addr = this.ip(),
[INFO] [stdout]  68 | |     [2] port: u16 = this.port(),
[INFO] [stdout]  69 | |     { Ok(SocketAddrV4::new(ip, port)) }
[INFO] [stdout]  70 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:72:1
[INFO] [stdout]     |
[INFO] [stdout]  72 | / fourleaf_retrofit!(struct SocketAddrV6 : {} {} {
[INFO] [stdout]  73 | |     |_context, this|
[INFO] [stdout]  74 | |     [1] ip: Ipv6Addr = this.ip(),
[INFO] [stdout]  75 | |     [2] port: u16 = this.port(),
[INFO] [stdout] ...   |
[INFO] [stdout]  78 | |     { Ok(SocketAddrV6::new(ip, port, flowinfo, scope_id)) }
[INFO] [stdout]  79 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stdout]  82 | |     |_context|
[INFO] [stdout]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stdout]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stdout] ...   |
[INFO] [stdout]  90 | |     },
[INFO] [stdout]  91 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stdout]  82 | |     |_context|
[INFO] [stdout]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stdout]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stdout] ...   |
[INFO] [stdout]  90 | |     },
[INFO] [stdout]  91 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stdout]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stdout]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stdout]  96 | | } {
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |     },
[INFO] [stdout] 110 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stdout]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stdout]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stdout]  96 | | } {
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |     },
[INFO] [stdout] 110 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/de.rs:168:31
[INFO] [stdout]     |
[INFO] [stdout] 168 |                      err: Box<::std::error::Error + Send + Sync>) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 168 |                      err: Box<dyn (::std::error::Error + Send + Sync)>) {
[INFO] [stdout]     |                               +++++                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/stream.rs:1263:24
[INFO] [stdout]      |
[INFO] [stdout] 1263 |     fn read(&mut self, mut buf: &mut [u8]) -> io::Result<usize> {
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:793:13
[INFO] [stdout]     |
[INFO] [stdout] 793 |         let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:960:17
[INFO] [stdout]     |
[INFO] [stdout] 960 |             let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                 ----^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:971:13
[INFO] [stdout]     |
[INFO] [stdout] 971 |         let mut blob = match field.value.to_blob().context(context) {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 987 |     deser_bytes_as_array!(deserialize_array_0, 0);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 988 |     deser_bytes_as_array!(deserialize_array_1, 1);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 989 |     deser_bytes_as_array!(deserialize_array_2, 2);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 990 |     deser_bytes_as_array!(deserialize_array_3, 3);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 991 |     deser_bytes_as_array!(deserialize_array_4, 4);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 992 |     deser_bytes_as_array!(deserialize_array_5, 5);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 993 |     deser_bytes_as_array!(deserialize_array_6, 6);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 994 |     deser_bytes_as_array!(deserialize_array_7, 7);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 995 |     deser_bytes_as_array!(deserialize_array_8, 8);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 996 |     deser_bytes_as_array!(deserialize_array_9, 9);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 997 |     deser_bytes_as_array!(deserialize_array_10, 10);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 998 |     deser_bytes_as_array!(deserialize_array_11, 11);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 999 |     deser_bytes_as_array!(deserialize_array_12, 12);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1000 |     deser_bytes_as_array!(deserialize_array_13, 13);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1001 |     deser_bytes_as_array!(deserialize_array_14, 14);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1002 |     deser_bytes_as_array!(deserialize_array_15, 15);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1003 |     deser_bytes_as_array!(deserialize_array_16, 16);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1004 |     deser_bytes_as_array!(deserialize_array_17, 17);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1005 |     deser_bytes_as_array!(deserialize_array_18, 18);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1006 |     deser_bytes_as_array!(deserialize_array_19, 19);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1007 |     deser_bytes_as_array!(deserialize_array_20, 20);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1008 |     deser_bytes_as_array!(deserialize_array_21, 21);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1009 |     deser_bytes_as_array!(deserialize_array_22, 22);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1010 |     deser_bytes_as_array!(deserialize_array_23, 23);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |     deser_bytes_as_array!(deserialize_array_24, 24);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1012 |     deser_bytes_as_array!(deserialize_array_25, 25);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     deser_bytes_as_array!(deserialize_array_26, 26);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1014 |     deser_bytes_as_array!(deserialize_array_27, 27);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1015 |     deser_bytes_as_array!(deserialize_array_28, 28);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1016 |     deser_bytes_as_array!(deserialize_array_29, 29);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1017 |     deser_bytes_as_array!(deserialize_array_30, 30);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1018 |     deser_bytes_as_array!(deserialize_array_31, 31);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1019 |     deser_bytes_as_array!(deserialize_array_32, 32);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:623:23
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<R>>>
[INFO] [stdout]     |                       ^^^^^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<'_, R>>>
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:648:25
[INFO] [stdout]     |
[INFO] [stdout] 648 |     pub fn next_element(&mut self) -> Result<Element<R>>
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 648 |     pub fn next_element(&mut self) -> Result<Element<'_, R>>
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:659:26
[INFO] [stdout]     |
[INFO] [stdout] 659 |     fn next_element_impl(&mut self, skip_padding: bool)
[INFO] [stdout]     |                          ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 660 |                          -> Result<Element<R>>
[INFO] [stdout]     |                                    ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 660 |                          -> Result<Element<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:710:19
[INFO] [stdout]     |
[INFO] [stdout] 710 |     fn next_value(&mut self, ty: DescriptorType)
[INFO] [stdout]     |                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 711 |                   -> Result<Value<R>>
[INFO] [stdout]     |                             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 711 |                   -> Result<Value<'_, R>>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:729:18
[INFO] [stdout]     |
[INFO] [stdout] 729 |     fn next_blob(&mut self) -> Result<Blob<R>>
[INFO] [stdout]     |                  ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 729 |     fn next_blob(&mut self) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:810:45
[INFO] [stdout]     |
[INFO] [stdout] 810 |     pub fn write_blob_data<D : AsRef<[u8]>>(&mut self, tag: u8, data: D)
[INFO] [stdout]     |                                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 811 |                                             -> Result<Blob<R>>
[INFO] [stdout]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 811 |                                             -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:828:29
[INFO] [stdout]     |
[INFO] [stdout] 828 |     pub fn write_blob_alloc(&mut self, tag: u8, len: u64)
[INFO] [stdout]     |                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 829 |                             -> Result<Blob<R>>
[INFO] [stdout]     |                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 829 |                             -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:835:35
[INFO] [stdout]     |
[INFO] [stdout] 835 |     fn write_desc_with_blob_alloc(&mut self, desc: wire::ParsedDescriptor,
[INFO] [stdout]     |                                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 836 |                                   len: u64) -> Result<Blob<R>>
[INFO] [stdout]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 836 |                                   len: u64) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:892:31
[INFO] [stdout]     |
[INFO] [stdout] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<R>>
[INFO] [stdout]     |                               ^^^^^^^^^                     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:898:37
[INFO] [stdout]     |
[INFO] [stdout] 898 |     fn write_desc_with_blob_dynamic(&mut self, desc: wire::ParsedDescriptor)
[INFO] [stdout]     |                                     ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 899 |                                     -> Result<Blob<R>>
[INFO] [stdout]     |                                               ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 899 |                                     -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:986:50
[INFO] [stdout]     |
[INFO] [stdout] 986 |     pub fn write_exception_data<D : AsRef<[u8]>>(&mut self, data: D)
[INFO] [stdout]     |                                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 987 |                                                  -> Result<Blob<R>>
[INFO] [stdout]     |                                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 987 |                                                  -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/stream.rs:1000:34
[INFO] [stdout]      |
[INFO] [stdout] 1000 |     pub fn write_exception_alloc(&mut self, len: u64)
[INFO] [stdout]      |                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 1001 |                                  -> Result<Blob<R>>
[INFO] [stdout]      |                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                                  -> Result<Blob<'_, R>>
[INFO] [stdout]      |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/stream.rs:1012:36
[INFO] [stdout]      |
[INFO] [stdout] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<R>>
[INFO] [stdout]      |                                    ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<'_, R>>
[INFO] [stdout]      |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/ser.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | ser_iter_mut!(<T : Serialize> Serialize for Option<T>);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 384 -         for e in self {
[INFO] [stdout] 384 +         while let Some() =  in self {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 384 -         for e in self {
[INFO] [stdout] 384 +         if let Some() =  in self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.37s
[INFO] running `Command { std: "docker" "inspect" "05e34f0e6352ea151288b6969eb9fb73dcf4894489082673da052a1a41f62e3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "05e34f0e6352ea151288b6969eb9fb73dcf4894489082673da052a1a41f62e3d", kill_on_drop: false }`
[INFO] [stdout] 05e34f0e6352ea151288b6969eb9fb73dcf4894489082673da052a1a41f62e3d
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 14b8ac9b8186058a9ebedbf889b2735e03544e89c078065492794ad3b25d0def
[INFO] running `Command { std: "docker" "start" "-a" "14b8ac9b8186058a9ebedbf889b2735e03544e89c078065492794ad3b25d0def", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:41:1
[INFO] [stdout]     |
[INFO] [stdout]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stdout]  42 | |     |_context|
[INFO] [stdout]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stdout]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stdout] ...   |
[INFO] [stdout]  50 | |     },
[INFO] [stdout]  51 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:41:1
[INFO] [stdout]     |
[INFO] [stdout]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stdout]  42 | |     |_context|
[INFO] [stdout]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stdout]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stdout] ...   |
[INFO] [stdout]  50 | |     },
[INFO] [stdout]  51 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout]  53 | / fourleaf_retrofit!(struct Duration : {} {} {
[INFO] [stdout]  54 | |     |context, this|
[INFO] [stdout]  55 | |     [1] secs: u64 = this.as_secs(),
[INFO] [stdout]  56 | |     [2] nsecs: u32 = this.subsec_nanos(),
[INFO] [stdout] ...   |
[INFO] [stdout]  62 | |     } }
[INFO] [stdout]  63 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:65:1
[INFO] [stdout]     |
[INFO] [stdout]  65 | / fourleaf_retrofit!(struct SocketAddrV4 : {} {} {
[INFO] [stdout]  66 | |     |_context, this|
[INFO] [stdout]  67 | |     [1] ip: Ipv4Addr = this.ip(),
[INFO] [stdout]  68 | |     [2] port: u16 = this.port(),
[INFO] [stdout]  69 | |     { Ok(SocketAddrV4::new(ip, port)) }
[INFO] [stdout]  70 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:72:1
[INFO] [stdout]     |
[INFO] [stdout]  72 | / fourleaf_retrofit!(struct SocketAddrV6 : {} {} {
[INFO] [stdout]  73 | |     |_context, this|
[INFO] [stdout]  74 | |     [1] ip: Ipv6Addr = this.ip(),
[INFO] [stdout]  75 | |     [2] port: u16 = this.port(),
[INFO] [stdout] ...   |
[INFO] [stdout]  78 | |     { Ok(SocketAddrV6::new(ip, port, flowinfo, scope_id)) }
[INFO] [stdout]  79 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stdout]  82 | |     |_context|
[INFO] [stdout]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stdout]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stdout] ...   |
[INFO] [stdout]  90 | |     },
[INFO] [stdout]  91 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stdout]  82 | |     |_context|
[INFO] [stdout]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stdout]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stdout] ...   |
[INFO] [stdout]  90 | |     },
[INFO] [stdout]  91 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stdout]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stdout]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stdout]  96 | | } {
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |     },
[INFO] [stdout] 110 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stdout]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stdout]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stdout]  96 | | } {
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |     },
[INFO] [stdout] 110 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/de.rs:168:31
[INFO] [stdout]     |
[INFO] [stdout] 168 |                      err: Box<::std::error::Error + Send + Sync>) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 168 |                      err: Box<dyn (::std::error::Error + Send + Sync)>) {
[INFO] [stdout]     |                               +++++                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/stream.rs:1263:24
[INFO] [stdout]      |
[INFO] [stdout] 1263 |     fn read(&mut self, mut buf: &mut [u8]) -> io::Result<usize> {
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:793:13
[INFO] [stdout]     |
[INFO] [stdout] 793 |         let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:960:17
[INFO] [stdout]     |
[INFO] [stdout] 960 |             let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                 ----^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:971:13
[INFO] [stdout]     |
[INFO] [stdout] 971 |         let mut blob = match field.value.to_blob().context(context) {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 987 |     deser_bytes_as_array!(deserialize_array_0, 0);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 988 |     deser_bytes_as_array!(deserialize_array_1, 1);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 989 |     deser_bytes_as_array!(deserialize_array_2, 2);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 990 |     deser_bytes_as_array!(deserialize_array_3, 3);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 991 |     deser_bytes_as_array!(deserialize_array_4, 4);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 992 |     deser_bytes_as_array!(deserialize_array_5, 5);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 993 |     deser_bytes_as_array!(deserialize_array_6, 6);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 994 |     deser_bytes_as_array!(deserialize_array_7, 7);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 995 |     deser_bytes_as_array!(deserialize_array_8, 8);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 996 |     deser_bytes_as_array!(deserialize_array_9, 9);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 997 |     deser_bytes_as_array!(deserialize_array_10, 10);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 998 |     deser_bytes_as_array!(deserialize_array_11, 11);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 999 |     deser_bytes_as_array!(deserialize_array_12, 12);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1000 |     deser_bytes_as_array!(deserialize_array_13, 13);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1001 |     deser_bytes_as_array!(deserialize_array_14, 14);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1002 |     deser_bytes_as_array!(deserialize_array_15, 15);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1003 |     deser_bytes_as_array!(deserialize_array_16, 16);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1004 |     deser_bytes_as_array!(deserialize_array_17, 17);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1005 |     deser_bytes_as_array!(deserialize_array_18, 18);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1006 |     deser_bytes_as_array!(deserialize_array_19, 19);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1007 |     deser_bytes_as_array!(deserialize_array_20, 20);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1008 |     deser_bytes_as_array!(deserialize_array_21, 21);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1009 |     deser_bytes_as_array!(deserialize_array_22, 22);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1010 |     deser_bytes_as_array!(deserialize_array_23, 23);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |     deser_bytes_as_array!(deserialize_array_24, 24);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1012 |     deser_bytes_as_array!(deserialize_array_25, 25);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     deser_bytes_as_array!(deserialize_array_26, 26);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1014 |     deser_bytes_as_array!(deserialize_array_27, 27);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1015 |     deser_bytes_as_array!(deserialize_array_28, 28);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1016 |     deser_bytes_as_array!(deserialize_array_29, 29);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1017 |     deser_bytes_as_array!(deserialize_array_30, 30);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1018 |     deser_bytes_as_array!(deserialize_array_31, 31);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1019 |     deser_bytes_as_array!(deserialize_array_32, 32);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:623:23
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<R>>>
[INFO] [stdout]     |                       ^^^^^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<'_, R>>>
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling fourleaf v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:648:25
[INFO] [stdout]     |
[INFO] [stdout] 648 |     pub fn next_element(&mut self) -> Result<Element<R>>
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 648 |     pub fn next_element(&mut self) -> Result<Element<'_, R>>
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:659:26
[INFO] [stdout]     |
[INFO] [stdout] 659 |     fn next_element_impl(&mut self, skip_padding: bool)
[INFO] [stdout]     |                          ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 660 |                          -> Result<Element<R>>
[INFO] [stdout]     |                                    ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 660 |                          -> Result<Element<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:710:19
[INFO] [stdout]     |
[INFO] [stdout] 710 |     fn next_value(&mut self, ty: DescriptorType)
[INFO] [stdout]     |                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 711 |                   -> Result<Value<R>>
[INFO] [stdout]     |                             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 711 |                   -> Result<Value<'_, R>>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:729:18
[INFO] [stdout]     |
[INFO] [stdout] 729 |     fn next_blob(&mut self) -> Result<Blob<R>>
[INFO] [stdout]     |                  ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 729 |     fn next_blob(&mut self) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:810:45
[INFO] [stdout]     |
[INFO] [stdout] 810 |     pub fn write_blob_data<D : AsRef<[u8]>>(&mut self, tag: u8, data: D)
[INFO] [stdout]     |                                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 811 |                                             -> Result<Blob<R>>
[INFO] [stdout]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 811 |                                             -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:828:29
[INFO] [stdout]     |
[INFO] [stdout] 828 |     pub fn write_blob_alloc(&mut self, tag: u8, len: u64)
[INFO] [stdout]     |                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 829 |                             -> Result<Blob<R>>
[INFO] [stdout]     |                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 829 |                             -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:835:35
[INFO] [stdout]     |
[INFO] [stdout] 835 |     fn write_desc_with_blob_alloc(&mut self, desc: wire::ParsedDescriptor,
[INFO] [stdout]     |                                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 836 |                                   len: u64) -> Result<Blob<R>>
[INFO] [stdout]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 836 |                                   len: u64) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:892:31
[INFO] [stdout]     |
[INFO] [stdout] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<R>>
[INFO] [stdout]     |                               ^^^^^^^^^                     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:898:37
[INFO] [stdout]     |
[INFO] [stdout] 898 |     fn write_desc_with_blob_dynamic(&mut self, desc: wire::ParsedDescriptor)
[INFO] [stdout]     |                                     ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 899 |                                     -> Result<Blob<R>>
[INFO] [stdout]     |                                               ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 899 |                                     -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:986:50
[INFO] [stdout]     |
[INFO] [stdout] 986 |     pub fn write_exception_data<D : AsRef<[u8]>>(&mut self, data: D)
[INFO] [stdout]     |                                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 987 |                                                  -> Result<Blob<R>>
[INFO] [stdout]     |                                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 987 |                                                  -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/stream.rs:1000:34
[INFO] [stdout]      |
[INFO] [stdout] 1000 |     pub fn write_exception_alloc(&mut self, len: u64)
[INFO] [stdout]      |                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 1001 |                                  -> Result<Blob<R>>
[INFO] [stdout]      |                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                                  -> Result<Blob<'_, R>>
[INFO] [stdout]      |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/stream.rs:1012:36
[INFO] [stdout]      |
[INFO] [stdout] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<R>>
[INFO] [stdout]      |                                    ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<'_, R>>
[INFO] [stdout]      |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/ser.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | ser_iter_mut!(<T : Serialize> Serialize for Option<T>);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 384 -         for e in self {
[INFO] [stdout] 384 +         while let Some() =  in self {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 384 -         for e in self {
[INFO] [stdout] 384 +         if let Some() =  in self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `debug`
[INFO] [stdout]     --> src/stream.rs:2237:11
[INFO] [stdout]      |
[INFO] [stdout] 2237 |     #[cfg(debug)]
[INFO] [stdout]      |           ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stdout]      = help: consider using a Cargo feature instead
[INFO] [stdout]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]               [lints.rust]
[INFO] [stdout]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stdout]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]      = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `debug`
[INFO] [stdout]     --> src/stream.rs:2245:11
[INFO] [stdout]      |
[INFO] [stdout] 2245 |     #[cfg(debug)]
[INFO] [stdout]      |           ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: consider using a Cargo feature instead
[INFO] [stdout]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]               [lints.rust]
[INFO] [stdout]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stdout]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 761 | /         fourleaf_retrofit!(struct SimpleStruct : {} {} {
[INFO] [stdout] 762 | |             |_context, this|
[INFO] [stdout] 763 | |             [1] foo: u32 = this.foo,
[INFO] [stdout] 764 | |             [2] bar: u64 = this.bar,
[INFO] [stdout] 765 | |             { Ok(SimpleStruct { foo: foo, bar: bar }) }
[INFO] [stdout] 766 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 768 | /         fourleaf_retrofit!(enum SimpleEnum : {} {} {
[INFO] [stdout] 769 | |             |_context|
[INFO] [stdout] 770 | |             [1] SimpleEnum::Unit => { { Ok(SimpleEnum::Unit) } },
[INFO] [stdout] 771 | |             [2] SimpleEnum::Tuple(a, b) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 780 | |             },
[INFO] [stdout] 781 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 768 | /         fourleaf_retrofit!(enum SimpleEnum : {} {} {
[INFO] [stdout] 769 | |             |_context|
[INFO] [stdout] 770 | |             [1] SimpleEnum::Unit => { { Ok(SimpleEnum::Unit) } },
[INFO] [stdout] 771 | |             [2] SimpleEnum::Tuple(a, b) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 780 | |             },
[INFO] [stdout] 781 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 768 | /         fourleaf_retrofit!(enum SimpleEnum : {} {} {
[INFO] [stdout] 769 | |             |_context|
[INFO] [stdout] 770 | |             [1] SimpleEnum::Unit => { { Ok(SimpleEnum::Unit) } },
[INFO] [stdout] 771 | |             [2] SimpleEnum::Tuple(a, b) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 780 | |             },
[INFO] [stdout] 781 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stdout] 784 | |             |_context, this|
[INFO] [stdout] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stdout] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stdout] 787 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 789 | /         fourleaf_retrofit!(enum DelegatingEnum : {} {} {
[INFO] [stdout] 790 | |             |_context|
[INFO] [stdout] 791 | |             [1] DelegatingEnum::Unit => { { Ok(DelegatingEnum::Unit) } },
[INFO] [stdout] 792 | |             [2] DelegatingEnum::Deleg(inner) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 795 | |             },
[INFO] [stdout] 796 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 789 | /         fourleaf_retrofit!(enum DelegatingEnum : {} {} {
[INFO] [stdout] 790 | |             |_context|
[INFO] [stdout] 791 | |             [1] DelegatingEnum::Unit => { { Ok(DelegatingEnum::Unit) } },
[INFO] [stdout] 792 | |             [2] DelegatingEnum::Deleg(inner) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 795 | |             },
[INFO] [stdout] 796 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 798 | /         fourleaf_retrofit!(struct UnknownPreserving : {} {
[INFO] [stdout] 799 | |             impl<R : ::std::io::Read, STYLE>
[INFO] [stdout] 800 | |             ::de::Deserialize<R, STYLE> for UnknownPreserving
[INFO] [stdout] 801 | |             where UnknownFields<'static> : ::de::Deserialize<R, STYLE>
[INFO] [stdout] ...   |
[INFO] [stdout] 806 | |             { Ok(UnknownPreserving { foo: foo, unknown: unknown }) }
[INFO] [stdout] 807 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stdout] 810 | |             |_context|
[INFO] [stdout] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stdout] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stdout] ...   |
[INFO] [stdout] 818 | |             },
[INFO] [stdout] 819 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout] ...
[INFO] [stdout] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stdout] 810 | |             |_context|
[INFO] [stdout] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stdout] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stdout] ...   |
[INFO] [stdout] 818 | |             },
[INFO] [stdout] 819 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:41:1
[INFO] [stdout]     |
[INFO] [stdout]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stdout]  42 | |     |_context|
[INFO] [stdout]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stdout]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stdout] ...   |
[INFO] [stdout]  50 | |     },
[INFO] [stdout]  51 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:41:1
[INFO] [stdout]     |
[INFO] [stdout]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stdout]  42 | |     |_context|
[INFO] [stdout]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stdout]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stdout] ...   |
[INFO] [stdout]  50 | |     },
[INFO] [stdout]  51 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout]  53 | / fourleaf_retrofit!(struct Duration : {} {} {
[INFO] [stdout]  54 | |     |context, this|
[INFO] [stdout]  55 | |     [1] secs: u64 = this.as_secs(),
[INFO] [stdout]  56 | |     [2] nsecs: u32 = this.subsec_nanos(),
[INFO] [stdout] ...   |
[INFO] [stdout]  62 | |     } }
[INFO] [stdout]  63 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:65:1
[INFO] [stdout]     |
[INFO] [stdout]  65 | / fourleaf_retrofit!(struct SocketAddrV4 : {} {} {
[INFO] [stdout]  66 | |     |_context, this|
[INFO] [stdout]  67 | |     [1] ip: Ipv4Addr = this.ip(),
[INFO] [stdout]  68 | |     [2] port: u16 = this.port(),
[INFO] [stdout]  69 | |     { Ok(SocketAddrV4::new(ip, port)) }
[INFO] [stdout]  70 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:72:1
[INFO] [stdout]     |
[INFO] [stdout]  72 | / fourleaf_retrofit!(struct SocketAddrV6 : {} {} {
[INFO] [stdout]  73 | |     |_context, this|
[INFO] [stdout]  74 | |     [1] ip: Ipv6Addr = this.ip(),
[INFO] [stdout]  75 | |     [2] port: u16 = this.port(),
[INFO] [stdout] ...   |
[INFO] [stdout]  78 | |     { Ok(SocketAddrV6::new(ip, port, flowinfo, scope_id)) }
[INFO] [stdout]  79 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stdout]  82 | |     |_context|
[INFO] [stdout]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stdout]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stdout] ...   |
[INFO] [stdout]  90 | |     },
[INFO] [stdout]  91 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:81:1
[INFO] [stdout]     |
[INFO] [stdout]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stdout]  82 | |     |_context|
[INFO] [stdout]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stdout]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stdout] ...   |
[INFO] [stdout]  90 | |     },
[INFO] [stdout]  91 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stdout]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stdout]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stdout]  96 | | } {
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |     },
[INFO] [stdout] 110 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/sugar.rs:453:11
[INFO] [stdout]     |
[INFO] [stdout] 453 |           )*;
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stdout]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stdout]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stdout]  96 | | } {
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |     },
[INFO] [stdout] 110 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/ser_des_builtin_tests.rs:18:14
[INFO] [stdout]    |
[INFO] [stdout] 18 | use stream::{self, Stream};
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/test_helpers.rs:22:13
[INFO] [stdout]    |
[INFO] [stdout] 22 |             (n - b'0')
[INFO] [stdout]    |             ^        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 22 -             (n - b'0')
[INFO] [stdout] 22 +             n - b'0'
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/de.rs:168:31
[INFO] [stdout]     |
[INFO] [stdout] 168 |                      err: Box<::std::error::Error + Send + Sync>) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 168 |                      err: Box<dyn (::std::error::Error + Send + Sync)>) {
[INFO] [stdout]     |                               +++++                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/stream.rs:1263:24
[INFO] [stdout]      |
[INFO] [stdout] 1263 |     fn read(&mut self, mut buf: &mut [u8]) -> io::Result<usize> {
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:793:13
[INFO] [stdout]     |
[INFO] [stdout] 793 |         let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:960:17
[INFO] [stdout]     |
[INFO] [stdout] 960 |             let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                 ----^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:971:13
[INFO] [stdout]     |
[INFO] [stdout] 971 |         let mut blob = match field.value.to_blob().context(context) {
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 987 |     deser_bytes_as_array!(deserialize_array_0, 0);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 988 |     deser_bytes_as_array!(deserialize_array_1, 1);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 989 |     deser_bytes_as_array!(deserialize_array_2, 2);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 990 |     deser_bytes_as_array!(deserialize_array_3, 3);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 991 |     deser_bytes_as_array!(deserialize_array_4, 4);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 992 |     deser_bytes_as_array!(deserialize_array_5, 5);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 993 |     deser_bytes_as_array!(deserialize_array_6, 6);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 994 |     deser_bytes_as_array!(deserialize_array_7, 7);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 995 |     deser_bytes_as_array!(deserialize_array_8, 8);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 996 |     deser_bytes_as_array!(deserialize_array_9, 9);
[INFO] [stdout]     |     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 997 |     deser_bytes_as_array!(deserialize_array_10, 10);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 998 |     deser_bytes_as_array!(deserialize_array_11, 11);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/de.rs:913:21
[INFO] [stdout]     |
[INFO] [stdout] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 999 |     deser_bytes_as_array!(deserialize_array_12, 12);
[INFO] [stdout]     |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1000 |     deser_bytes_as_array!(deserialize_array_13, 13);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1001 |     deser_bytes_as_array!(deserialize_array_14, 14);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1002 |     deser_bytes_as_array!(deserialize_array_15, 15);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1003 |     deser_bytes_as_array!(deserialize_array_16, 16);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1004 |     deser_bytes_as_array!(deserialize_array_17, 17);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1005 |     deser_bytes_as_array!(deserialize_array_18, 18);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1006 |     deser_bytes_as_array!(deserialize_array_19, 19);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1007 |     deser_bytes_as_array!(deserialize_array_20, 20);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1008 |     deser_bytes_as_array!(deserialize_array_21, 21);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1009 |     deser_bytes_as_array!(deserialize_array_22, 22);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1010 |     deser_bytes_as_array!(deserialize_array_23, 23);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1011 |     deser_bytes_as_array!(deserialize_array_24, 24);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1012 |     deser_bytes_as_array!(deserialize_array_25, 25);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1013 |     deser_bytes_as_array!(deserialize_array_26, 26);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1014 |     deser_bytes_as_array!(deserialize_array_27, 27);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1015 |     deser_bytes_as_array!(deserialize_array_28, 28);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1016 |     deser_bytes_as_array!(deserialize_array_29, 29);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1017 |     deser_bytes_as_array!(deserialize_array_30, 30);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1018 |     deser_bytes_as_array!(deserialize_array_31, 31);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/de.rs:913:21
[INFO] [stdout]      |
[INFO] [stdout]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stdout]      |                     ----^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 1019 |     deser_bytes_as_array!(deserialize_array_32, 32);
[INFO] [stdout]      |     ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stdout] 784 | |             |_context, this|
[INFO] [stdout] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stdout] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stdout] 787 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stdout] 784 | |             |_context, this|
[INFO] [stdout] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stdout] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stdout] 787 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout] ...
[INFO] [stdout] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stdout] 784 | |             |_context, this|
[INFO] [stdout] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stdout] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stdout] 787 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout] ...
[INFO] [stdout] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stdout] 784 | |             |_context, this|
[INFO] [stdout] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stdout] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stdout] 787 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/sugar.rs:702:29
[INFO] [stdout]     |
[INFO] [stdout] 702 |                           let error: $crate::de::Result<Self> = Err(
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stdout] 810 | |             |_context|
[INFO] [stdout] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stdout] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stdout] ...   |
[INFO] [stdout] 818 | |             },
[INFO] [stdout] 819 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `error` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:702:29
[INFO] [stdout]     |
[INFO] [stdout] 702 |                           let error: $crate::de::Result<Self> = Err(
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stdout] 810 | |             |_context|
[INFO] [stdout] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stdout] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stdout] ...   |
[INFO] [stdout] 818 | |             },
[INFO] [stdout] 819 | |         });
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:20:1
[INFO] [stdout]     |
[INFO] [stdout]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stdout]  21 | |     |_context, this|
[INFO] [stdout]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stdout]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stdout]  24 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:594:17
[INFO] [stdout]     |
[INFO] [stdout] 594 |                   dst.write_struct(tag)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `val` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/sugar.rs:622:47
[INFO] [stdout]     |
[INFO] [stdout] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stdout]     |  _______________________________________________^
[INFO] [stdout] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stdout]     | |__________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/retrofit.rs:27:1
[INFO] [stdout]     |
[INFO] [stdout]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stdout]  28 | |     |_context, this|
[INFO] [stdout]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stdout]  30 | |     { {
[INFO] [stdout] ...   |
[INFO] [stdout]  38 | |     } }
[INFO] [stdout]  39 | | });
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:623:23
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<R>>>
[INFO] [stdout]     |                       ^^^^^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<'_, R>>>
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:648:25
[INFO] [stdout]     |
[INFO] [stdout] 648 |     pub fn next_element(&mut self) -> Result<Element<R>>
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 648 |     pub fn next_element(&mut self) -> Result<Element<'_, R>>
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:659:26
[INFO] [stdout]     |
[INFO] [stdout] 659 |     fn next_element_impl(&mut self, skip_padding: bool)
[INFO] [stdout]     |                          ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 660 |                          -> Result<Element<R>>
[INFO] [stdout]     |                                    ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 660 |                          -> Result<Element<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:710:19
[INFO] [stdout]     |
[INFO] [stdout] 710 |     fn next_value(&mut self, ty: DescriptorType)
[INFO] [stdout]     |                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 711 |                   -> Result<Value<R>>
[INFO] [stdout]     |                             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 711 |                   -> Result<Value<'_, R>>
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:729:18
[INFO] [stdout]     |
[INFO] [stdout] 729 |     fn next_blob(&mut self) -> Result<Blob<R>>
[INFO] [stdout]     |                  ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 729 |     fn next_blob(&mut self) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:810:45
[INFO] [stdout]     |
[INFO] [stdout] 810 |     pub fn write_blob_data<D : AsRef<[u8]>>(&mut self, tag: u8, data: D)
[INFO] [stdout]     |                                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 811 |                                             -> Result<Blob<R>>
[INFO] [stdout]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 811 |                                             -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:828:29
[INFO] [stdout]     |
[INFO] [stdout] 828 |     pub fn write_blob_alloc(&mut self, tag: u8, len: u64)
[INFO] [stdout]     |                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 829 |                             -> Result<Blob<R>>
[INFO] [stdout]     |                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 829 |                             -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:835:35
[INFO] [stdout]     |
[INFO] [stdout] 835 |     fn write_desc_with_blob_alloc(&mut self, desc: wire::ParsedDescriptor,
[INFO] [stdout]     |                                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 836 |                                   len: u64) -> Result<Blob<R>>
[INFO] [stdout]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 836 |                                   len: u64) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:892:31
[INFO] [stdout]     |
[INFO] [stdout] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<R>>
[INFO] [stdout]     |                               ^^^^^^^^^                     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:898:37
[INFO] [stdout]     |
[INFO] [stdout] 898 |     fn write_desc_with_blob_dynamic(&mut self, desc: wire::ParsedDescriptor)
[INFO] [stdout]     |                                     ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 899 |                                     -> Result<Blob<R>>
[INFO] [stdout]     |                                               ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 899 |                                     -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/stream.rs:986:50
[INFO] [stdout]     |
[INFO] [stdout] 986 |     pub fn write_exception_data<D : AsRef<[u8]>>(&mut self, data: D)
[INFO] [stdout]     |                                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 987 |                                                  -> Result<Blob<R>>
[INFO] [stdout]     |                                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 987 |                                                  -> Result<Blob<'_, R>>
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/stream.rs:1000:34
[INFO] [stdout]      |
[INFO] [stdout] 1000 |     pub fn write_exception_alloc(&mut self, len: u64)
[INFO] [stdout]      |                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stdout] 1001 |                                  -> Result<Blob<R>>
[INFO] [stdout]      |                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                                  -> Result<Blob<'_, R>>
[INFO] [stdout]      |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/stream.rs:1012:36
[INFO] [stdout]      |
[INFO] [stdout] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<R>>
[INFO] [stdout]      |                                    ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<'_, R>>
[INFO] [stdout]      |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/ser.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | ser_iter_mut!(<T : Serialize> Serialize for Option<T>);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 384 -         for e in self {
[INFO] [stdout] 384 +         while let Some() =  in self {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 384 -         for e in self {
[INFO] [stdout] 384 +         if let Some() =  in self {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.34s
[INFO] running `Command { std: "docker" "inspect" "14b8ac9b8186058a9ebedbf889b2735e03544e89c078065492794ad3b25d0def", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14b8ac9b8186058a9ebedbf889b2735e03544e89c078065492794ad3b25d0def", kill_on_drop: false }`
[INFO] [stdout] 14b8ac9b8186058a9ebedbf889b2735e03544e89c078065492794ad3b25d0def
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 959118c4d16118f0265c9881d73c0ad36b60619f6e2dbd5e5556401f46368f15
[INFO] running `Command { std: "docker" "start" "-a" "959118c4d16118f0265c9881d73c0ad36b60619f6e2dbd5e5556401f46368f15", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:27:1
[INFO] [stderr]     |
[INFO] [stderr]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stderr]  28 | |     |_context, this|
[INFO] [stderr]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stderr]  30 | |     { {
[INFO] [stderr] ...   |
[INFO] [stderr]  38 | |     } }
[INFO] [stderr]  39 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:41:1
[INFO] [stderr]     |
[INFO] [stderr]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stderr]  42 | |     |_context|
[INFO] [stderr]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stderr]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stderr] ...   |
[INFO] [stderr]  50 | |     },
[INFO] [stderr]  51 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:53:1
[INFO] [stderr]     |
[INFO] [stderr]  53 | / fourleaf_retrofit!(struct Duration : {} {} {
[INFO] [stderr]  54 | |     |context, this|
[INFO] [stderr]  55 | |     [1] secs: u64 = this.as_secs(),
[INFO] [stderr]  56 | |     [2] nsecs: u32 = this.subsec_nanos(),
[INFO] [stderr] ...   |
[INFO] [stderr]  62 | |     } }
[INFO] [stderr]  63 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:65:1
[INFO] [stderr]     |
[INFO] [stderr]  65 | / fourleaf_retrofit!(struct SocketAddrV4 : {} {} {
[INFO] [stderr]  66 | |     |_context, this|
[INFO] [stderr]  67 | |     [1] ip: Ipv4Addr = this.ip(),
[INFO] [stderr]  68 | |     [2] port: u16 = this.port(),
[INFO] [stderr]  69 | |     { Ok(SocketAddrV4::new(ip, port)) }
[INFO] [stderr]  70 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:72:1
[INFO] [stderr]     |
[INFO] [stderr]  72 | / fourleaf_retrofit!(struct SocketAddrV6 : {} {} {
[INFO] [stderr]  73 | |     |_context, this|
[INFO] [stderr]  74 | |     [1] ip: Ipv6Addr = this.ip(),
[INFO] [stderr]  75 | |     [2] port: u16 = this.port(),
[INFO] [stderr] ...   |
[INFO] [stderr]  78 | |     { Ok(SocketAddrV6::new(ip, port, flowinfo, scope_id)) }
[INFO] [stderr]  79 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:81:1
[INFO] [stderr]     |
[INFO] [stderr]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stderr]  82 | |     |_context|
[INFO] [stderr]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stderr]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stderr] ...   |
[INFO] [stderr]  90 | |     },
[INFO] [stderr]  91 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:93:1
[INFO] [stderr]     |
[INFO] [stderr]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stderr]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stderr]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stderr]  96 | | } {
[INFO] [stderr] ...   |
[INFO] [stderr] 109 | |     },
[INFO] [stderr] 110 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/de.rs:168:31
[INFO] [stderr]     |
[INFO] [stderr] 168 |                      err: Box<::std::error::Error + Send + Sync>) {
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 168 |                      err: Box<dyn (::std::error::Error + Send + Sync)>) {
[INFO] [stderr]     |                               +++++                                 +
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/stream.rs:1263:24
[INFO] [stderr]      |
[INFO] [stderr] 1263 |     fn read(&mut self, mut buf: &mut [u8]) -> io::Result<usize> {
[INFO] [stderr]      |                        ----^^^
[INFO] [stderr]      |                        |
[INFO] [stderr]      |                        help: remove this `mut`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:793:13
[INFO] [stderr]     |
[INFO] [stderr] 793 |         let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:960:17
[INFO] [stderr]     |
[INFO] [stderr] 960 |             let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                 ----^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:971:13
[INFO] [stderr]     |
[INFO] [stderr] 971 |         let mut blob = match field.value.to_blob().context(context) {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 987 |     deser_bytes_as_array!(deserialize_array_0, 0);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 988 |     deser_bytes_as_array!(deserialize_array_1, 1);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 989 |     deser_bytes_as_array!(deserialize_array_2, 2);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 990 |     deser_bytes_as_array!(deserialize_array_3, 3);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 991 |     deser_bytes_as_array!(deserialize_array_4, 4);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 992 |     deser_bytes_as_array!(deserialize_array_5, 5);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 993 |     deser_bytes_as_array!(deserialize_array_6, 6);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 994 |     deser_bytes_as_array!(deserialize_array_7, 7);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 995 |     deser_bytes_as_array!(deserialize_array_8, 8);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 996 |     deser_bytes_as_array!(deserialize_array_9, 9);
[INFO] [stderr]     |     --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 997 |     deser_bytes_as_array!(deserialize_array_10, 10);
[INFO] [stderr]     |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 998 |     deser_bytes_as_array!(deserialize_array_11, 11);
[INFO] [stderr]     |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/de.rs:913:21
[INFO] [stderr]     |
[INFO] [stderr] 913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]     |                     ----^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 999 |     deser_bytes_as_array!(deserialize_array_12, 12);
[INFO] [stderr]     |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1000 |     deser_bytes_as_array!(deserialize_array_13, 13);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1001 |     deser_bytes_as_array!(deserialize_array_14, 14);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1002 |     deser_bytes_as_array!(deserialize_array_15, 15);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1003 |     deser_bytes_as_array!(deserialize_array_16, 16);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1004 |     deser_bytes_as_array!(deserialize_array_17, 17);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1005 |     deser_bytes_as_array!(deserialize_array_18, 18);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1006 |     deser_bytes_as_array!(deserialize_array_19, 19);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1007 |     deser_bytes_as_array!(deserialize_array_20, 20);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1008 |     deser_bytes_as_array!(deserialize_array_21, 21);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1009 |     deser_bytes_as_array!(deserialize_array_22, 22);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1010 |     deser_bytes_as_array!(deserialize_array_23, 23);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1011 |     deser_bytes_as_array!(deserialize_array_24, 24);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1012 |     deser_bytes_as_array!(deserialize_array_25, 25);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1013 |     deser_bytes_as_array!(deserialize_array_26, 26);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1014 |     deser_bytes_as_array!(deserialize_array_27, 27);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1015 |     deser_bytes_as_array!(deserialize_array_28, 28);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1016 |     deser_bytes_as_array!(deserialize_array_29, 29);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1017 |     deser_bytes_as_array!(deserialize_array_30, 30);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1018 |     deser_bytes_as_array!(deserialize_array_31, 31);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/de.rs:913:21
[INFO] [stderr]      |
[INFO] [stderr]  913 |                 let mut blob = field.value.to_blob().context(context)?;
[INFO] [stderr]      |                     ----^^^^
[INFO] [stderr]      |                     |
[INFO] [stderr]      |                     help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 1019 |     deser_bytes_as_array!(deserialize_array_32, 32);
[INFO] [stderr]      |     ----------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in the macro `deser_bytes_as_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:622:47
[INFO] [stderr]     |
[INFO] [stderr] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stderr]     |  _______________________________________________^
[INFO] [stderr] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:622:47
[INFO] [stderr]     |
[INFO] [stderr] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stderr]     |  _______________________________________________^
[INFO] [stderr] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:27:1
[INFO] [stderr]     |
[INFO] [stderr]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stderr]  28 | |     |_context, this|
[INFO] [stderr]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stderr]  30 | |     { {
[INFO] [stderr] ...   |
[INFO] [stderr]  38 | |     } }
[INFO] [stderr]  39 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:27:1
[INFO] [stderr]     |
[INFO] [stderr]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stderr]  28 | |     |_context, this|
[INFO] [stderr]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stderr]  30 | |     { {
[INFO] [stderr] ...   |
[INFO] [stderr]  38 | |     } }
[INFO] [stderr]  39 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:622:47
[INFO] [stderr]     |
[INFO] [stderr] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stderr]     |  _______________________________________________^
[INFO] [stderr] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:27:1
[INFO] [stderr]     |
[INFO] [stderr]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stderr]  28 | |     |_context, this|
[INFO] [stderr]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stderr]  30 | |     { {
[INFO] [stderr] ...   |
[INFO] [stderr]  38 | |     } }
[INFO] [stderr]  39 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:622:47
[INFO] [stderr]     |
[INFO] [stderr] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stderr]     |  _______________________________________________^
[INFO] [stderr] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:27:1
[INFO] [stderr]     |
[INFO] [stderr]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stderr]  28 | |     |_context, this|
[INFO] [stderr]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stderr]  30 | |     { {
[INFO] [stderr] ...   |
[INFO] [stderr]  38 | |     } }
[INFO] [stderr]  39 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:623:23
[INFO] [stderr]     |
[INFO] [stderr] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<R>>>
[INFO] [stderr]     |                       ^^^^^^^^^                   ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 623 |     pub fn next_field(&mut self) -> Result<Option<Field<'_, R>>>
[INFO] [stderr]     |                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:648:25
[INFO] [stderr]     |
[INFO] [stderr] 648 |     pub fn next_element(&mut self) -> Result<Element<R>>
[INFO] [stderr]     |                         ^^^^^^^^^            ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 648 |     pub fn next_element(&mut self) -> Result<Element<'_, R>>
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:659:26
[INFO] [stderr]     |
[INFO] [stderr] 659 |     fn next_element_impl(&mut self, skip_padding: bool)
[INFO] [stderr]     |                          ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 660 |                          -> Result<Element<R>>
[INFO] [stderr]     |                                    ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 660 |                          -> Result<Element<'_, R>>
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:710:19
[INFO] [stderr]     |
[INFO] [stderr] 710 |     fn next_value(&mut self, ty: DescriptorType)
[INFO] [stderr]     |                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 711 |                   -> Result<Value<R>>
[INFO] [stderr]     |                             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 711 |                   -> Result<Value<'_, R>>
[INFO] [stderr]     |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:729:18
[INFO] [stderr]     |
[INFO] [stderr] 729 |     fn next_blob(&mut self) -> Result<Blob<R>>
[INFO] [stderr]     |                  ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 729 |     fn next_blob(&mut self) -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:810:45
[INFO] [stderr]     |
[INFO] [stderr] 810 |     pub fn write_blob_data<D : AsRef<[u8]>>(&mut self, tag: u8, data: D)
[INFO] [stderr]     |                                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 811 |                                             -> Result<Blob<R>>
[INFO] [stderr]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 811 |                                             -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:828:29
[INFO] [stderr]     |
[INFO] [stderr] 828 |     pub fn write_blob_alloc(&mut self, tag: u8, len: u64)
[INFO] [stderr]     |                             ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 829 |                             -> Result<Blob<R>>
[INFO] [stderr]     |                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 829 |                             -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:835:35
[INFO] [stderr]     |
[INFO] [stderr] 835 |     fn write_desc_with_blob_alloc(&mut self, desc: wire::ParsedDescriptor,
[INFO] [stderr]     |                                   ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 836 |                                   len: u64) -> Result<Blob<R>>
[INFO] [stderr]     |                                                       ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 836 |                                   len: u64) -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:892:31
[INFO] [stderr]     |
[INFO] [stderr] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<R>>
[INFO] [stderr]     |                               ^^^^^^^^^                     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 892 |     pub fn write_blob_dynamic(&mut self, tag: u8) -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:898:37
[INFO] [stderr]     |
[INFO] [stderr] 898 |     fn write_desc_with_blob_dynamic(&mut self, desc: wire::ParsedDescriptor)
[INFO] [stderr]     |                                     ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 899 |                                     -> Result<Blob<R>>
[INFO] [stderr]     |                                               ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 899 |                                     -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/stream.rs:986:50
[INFO] [stderr]     |
[INFO] [stderr] 986 |     pub fn write_exception_data<D : AsRef<[u8]>>(&mut self, data: D)
[INFO] [stderr]     |                                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 987 |                                                  -> Result<Blob<R>>
[INFO] [stderr]     |                                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 987 |                                                  -> Result<Blob<'_, R>>
[INFO] [stderr]     |                                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/stream.rs:1000:34
[INFO] [stderr]      |
[INFO] [stderr] 1000 |     pub fn write_exception_alloc(&mut self, len: u64)
[INFO] [stderr]      |                                  ^^^^^^^^^ the lifetime is elided here
[INFO] [stderr] 1001 |                                  -> Result<Blob<R>>
[INFO] [stderr]      |                                            ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1001 |                                  -> Result<Blob<'_, R>>
[INFO] [stderr]      |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> src/stream.rs:1012:36
[INFO] [stderr]      |
[INFO] [stderr] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<R>>
[INFO] [stderr]      |                                    ^^^^^^^^^            ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |                                    |
[INFO] [stderr]      |                                    the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1012 |     pub fn write_exception_dynamic(&mut self) -> Result<Blob<'_, R>>
[INFO] [stderr]      |                                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: for loop over a `&Option`. This is more readably written as an `if let` statement
[INFO] [stderr]    --> src/ser.rs:402:1
[INFO] [stderr]     |
[INFO] [stderr] 402 | ser_iter_mut!(<T : Serialize> Serialize for Option<T>);
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr]     |
[INFO] [stderr] 384 -         for e in self {
[INFO] [stderr] 384 +         while let Some() =  in self {
[INFO] [stderr]     |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr]     |
[INFO] [stderr] 384 -         for e in self {
[INFO] [stderr] 384 +         if let Some() =  in self {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `fourleaf` (lib) generated 67 warnings (3 duplicates) (run `cargo fix --lib -p fourleaf` to apply 51 suggestions)
[INFO] [stderr] warning: unexpected `cfg` condition name: `debug`
[INFO] [stderr]     --> src/stream.rs:2237:11
[INFO] [stderr]      |
[INFO] [stderr] 2237 |     #[cfg(debug)]
[INFO] [stderr]      |           ^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
[INFO] [stderr]      = help: consider using a Cargo feature instead
[INFO] [stderr]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]               [lints.rust]
[INFO] [stderr]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stderr]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stderr]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]      = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `debug`
[INFO] [stderr]     --> src/stream.rs:2245:11
[INFO] [stderr]      |
[INFO] [stderr] 2245 |     #[cfg(debug)]
[INFO] [stderr]      |           ^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: consider using a Cargo feature instead
[INFO] [stderr]      = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]               [lints.rust]
[INFO] [stderr]               unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stderr]      = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stderr]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr] ...
[INFO] [stderr] 761 | /         fourleaf_retrofit!(struct SimpleStruct : {} {} {
[INFO] [stderr] 762 | |             |_context, this|
[INFO] [stderr] 763 | |             [1] foo: u32 = this.foo,
[INFO] [stderr] 764 | |             [2] bar: u64 = this.bar,
[INFO] [stderr] 765 | |             { Ok(SimpleStruct { foo: foo, bar: bar }) }
[INFO] [stderr] 766 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr] ...
[INFO] [stderr] 768 | /         fourleaf_retrofit!(enum SimpleEnum : {} {} {
[INFO] [stderr] 769 | |             |_context|
[INFO] [stderr] 770 | |             [1] SimpleEnum::Unit => { { Ok(SimpleEnum::Unit) } },
[INFO] [stderr] 771 | |             [2] SimpleEnum::Tuple(a, b) => {
[INFO] [stderr] ...   |
[INFO] [stderr] 780 | |             },
[INFO] [stderr] 781 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr] ...
[INFO] [stderr] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stderr] 784 | |             |_context, this|
[INFO] [stderr] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stderr] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stderr] 787 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr] ...
[INFO] [stderr] 789 | /         fourleaf_retrofit!(enum DelegatingEnum : {} {} {
[INFO] [stderr] 790 | |             |_context|
[INFO] [stderr] 791 | |             [1] DelegatingEnum::Unit => { { Ok(DelegatingEnum::Unit) } },
[INFO] [stderr] 792 | |             [2] DelegatingEnum::Deleg(inner) => {
[INFO] [stderr] ...   |
[INFO] [stderr] 795 | |             },
[INFO] [stderr] 796 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr] ...
[INFO] [stderr] 798 | /         fourleaf_retrofit!(struct UnknownPreserving : {} {
[INFO] [stderr] 799 | |             impl<R : ::std::io::Read, STYLE>
[INFO] [stderr] 800 | |             ::de::Deserialize<R, STYLE> for UnknownPreserving
[INFO] [stderr] 801 | |             where UnknownFields<'static> : ::de::Deserialize<R, STYLE>
[INFO] [stderr] ...   |
[INFO] [stderr] 806 | |             { Ok(UnknownPreserving { foo: foo, unknown: unknown }) }
[INFO] [stderr] 807 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr] ...
[INFO] [stderr] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stderr] 810 | |             |_context|
[INFO] [stderr] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stderr] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stderr] ...   |
[INFO] [stderr] 818 | |             },
[INFO] [stderr] 819 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/ser_des_builtin_tests.rs:18:14
[INFO] [stderr]    |
[INFO] [stderr] 18 | use stream::{self, Stream};
[INFO] [stderr]    |              ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> src/test_helpers.rs:22:13
[INFO] [stderr]    |
[INFO] [stderr] 22 |             (n - b'0')
[INFO] [stderr]    |             ^        ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 22 -             (n - b'0')
[INFO] [stderr] 22 +             n - b'0'
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stderr] 784 | |             |_context, this|
[INFO] [stderr] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stderr] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stderr] 787 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stderr] 784 | |             |_context, this|
[INFO] [stderr] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stderr] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stderr] 787 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:622:47
[INFO] [stderr]     |
[INFO] [stderr] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stderr]     |  _______________________________________________^
[INFO] [stderr] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr] ...
[INFO] [stderr] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stderr] 784 | |             |_context, this|
[INFO] [stderr] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stderr] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stderr] 787 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:622:47
[INFO] [stderr]     |
[INFO] [stderr] 622 |                       deserialize_body(context, $crate::ms::ResultExt::context(
[INFO] [stderr]     |  _______________________________________________^
[INFO] [stderr] 623 | |                         field.value.to_struct(), context)?)
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr] ...
[INFO] [stderr] 783 | /         fourleaf_retrofit!(struct DelegatingStruct : {} {} {
[INFO] [stderr] 784 | |             |_context, this|
[INFO] [stderr] 785 | |             (*) it: SimpleStruct = this.0,
[INFO] [stderr] 786 | |             { Ok(DelegatingStruct(it)) }
[INFO] [stderr] 787 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]    --> src/sugar.rs:702:29
[INFO] [stderr]     |
[INFO] [stderr] 702 |                           let error: $crate::de::Result<Self> = Err(
[INFO] [stderr]     |                               ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stderr] 810 | |             |_context|
[INFO] [stderr] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stderr] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stderr] ...   |
[INFO] [stderr] 818 | |             },
[INFO] [stderr] 819 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `error` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:702:29
[INFO] [stderr]     |
[INFO] [stderr] 702 |                           let error: $crate::de::Result<Self> = Err(
[INFO] [stderr]     |                               ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 809 | /         fourleaf_retrofit!(enum UnknownPreservingEnum : {} {} {
[INFO] [stderr] 810 | |             |_context|
[INFO] [stderr] 811 | |             [1] UnknownPreservingEnum::Unit => {
[INFO] [stderr] 812 | |                 { Ok(UnknownPreservingEnum::Unit) }
[INFO] [stderr] ...   |
[INFO] [stderr] 818 | |             },
[INFO] [stderr] 819 | |         });
[INFO] [stderr]     | |__________- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `val`
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `val` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/sugar.rs:594:17
[INFO] [stderr]     |
[INFO] [stderr] 594 |                   dst.write_struct(tag)?;
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `fourleaf` (lib test) generated 84 warnings (69 duplicates) (run `cargo fix --lib -p fourleaf --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/fourleaf-d7e44f0925d05cb5)
[INFO] [stdout] 
[INFO] [stdout] running 203 tests
[INFO] [stdout] test retrofit::test::duration ... ok
[INFO] [stdout] test retrofit::test::ipvaddr_v4 ... ok
[INFO] [stdout] test retrofit::test::sockaddr_v6 ... ok
[INFO] [stdout] test retrofit::test::result_err ... ok
[INFO] [stdout] test retrofit::test::result_ok ... ok
[INFO] [stdout] test retrofit::test::sockv6addr ... ok
[INFO] [stdout] test retrofit::test::sockaddr_v4 ... ok
[INFO] [stdout] test retrofit::test::ipv4addr ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_arc ... ok
[INFO] [stdout] test retrofit::test::duration_rejected_if_nsecs_too_big ... ok
[INFO] [stdout] test ser_des_builtin_tests::byte_array_wrong_length ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_box ... ok
[INFO] [stdout] test retrofit::test::ipaddr_v6 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_byte_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_byte_slice ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_hs ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_ll ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_hm ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_vd ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_false ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_empty_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_i8 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_i16 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_isize ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_btm ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_btm ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_bts ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_option ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_hm ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_vd ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_hs ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_ll ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_string ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_rc ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_true ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_str ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_two_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_u32 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_usize ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_u16 ... ok
[INFO] [stdout] test ser_des_builtin_tests::fixed_array_with_no_values ... ok
[INFO] [stdout] test ser_des_builtin_tests::fixed_array_with_too_few_values ... ok
[INFO] [stdout] test ser_des_builtin_tests::cow_desers_according_to_style ... ok
[INFO] [stdout] test ser_des_builtin_tests::fixed_array_with_too_many_values ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_vec_bytes ... ok
[INFO] [stdout] test ser_des_builtin_tests::large_byte_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_u64 ... ok
[INFO] [stdout] test retrofit::test::sockv4addr ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_option ... ok
[INFO] [stdout] test ser_des_builtin_tests::max_blob_exceeded ... ok
[INFO] [stdout] test ser_des_builtin_tests::max_collect_exceeded_on_hash_map ... ok
[INFO] [stdout] test ser_des_builtin_tests::max_collect_exceeded_on_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::large_val_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::recursion_limit_exceeded ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_byte_slice ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_arc ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_box ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_btm ... ok
[INFO] [stdout] test ser_des_builtin_tests::option_with_two_values ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_hm ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_hs ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_ll ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_option ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_vd ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_e_bts ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_empty_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_false ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_i16 ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_i64 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_i8 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_i64 ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_i32 ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_i32 ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_isize ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_one_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_btm ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_hs ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_hm ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_vd ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_option ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_ll ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_two_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_str ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_u16 ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_p_bts ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_string ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_true ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_rc ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_u8 ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_u64 ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_usize ... ok
[INFO] [stdout] test ser_des_builtin_tests::string_invalid_utf8 ... ok
[INFO] [stdout] test ser_des_builtin_tests::te_e_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_arc ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_u32 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_byte_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_btm ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_bts ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_vec_bytes ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_box ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_hs ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_ll ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_vd ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_option ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_empty_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_byte_slice ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_false ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_hm ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_e_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_i32 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_i8 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_isize ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_array ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_one_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_i16 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_i64 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_btm ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_bts ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_hm ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_option ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_vd ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_string ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_true ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_two_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_u32 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_u16 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_u64 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_u8 ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_usize ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_vec_bytes ... ok
[INFO] [stdout] test ser_des_builtin_tests::tuple_field_not_populated ... ok
[INFO] [stdout] test ser_des_builtin_tests::unknown_fields_ignored_by_default ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_hs ... ok
[INFO] [stdout] test ser_des_builtin_tests::unknown_field_rejected ... ok
[INFO] [stdout] test stream::test::blob_rewrite ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_p_ll ... ok
[INFO] [stdout] test stream::test::blob_seek ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_rc ... ok
[INFO] [stdout] test stream::test::blob_slice_oob ... ok
[INFO] [stdout] test ser_des_builtin_tests::tl_str ... ok
[INFO] [stdout] test stream::test::blob_slicing ... ok
[INFO] [stdout] test stream::test::graceful_eof ... ok
[INFO] [stdout] test stream::test::decode_integers ... ok
[INFO] [stdout] test stream::test::incomplete_alloc_blob_fails ... ok
[INFO] [stdout] test stream::test::blob_zero_copy ... ok
[INFO] [stdout] test stream::test::graceless_eof ... ok
[INFO] [stdout] test stream::test::blob_access_overflow_detected ... ok
[INFO] [stdout] test stream::test::blob_bufread ... ok
[INFO] [stdout] test stream::test::read_explicit_eof ... ok
[INFO] [stdout] test stream::test::padding_skipped ... ok
[INFO] [stdout] test stream::test::read_nested_struct ... ok
[INFO] [stdout] test stream::test::read_inband_error ... ok
[INFO] [stdout] test stream::test::read_partial_blob ... ok
[INFO] [stdout] test stream::test::read_overflow_detected ... ok
[INFO] [stdout] test stream::test::read_whole_blob ... ok
[INFO] [stdout] test stream::test::simple ... ok
[INFO] [stdout] test stream::test::get_oversized_blob_fails ... ok
[INFO] [stdout] test stream::test::reset_pos_skips_unconsumed_blob ... ok
[INFO] [stdout] test stream::test::skip_up_to_container ... ok
[INFO] [stdout] test stream::test::struct_depth_tracking ... ok
[INFO] [stdout] test stream::test::write_alloc_dynamic ... ok
[INFO] [stdout] test stream::test::read_enum ... ok
[INFO] [stdout] test stream::test::write_direct_blob ... ok
[INFO] [stdout] test stream::test::write_integers ... ok
[INFO] [stdout] test stream::test::write_padding_to_alignment ... ok
[INFO] [stdout] test stream::test::write_scalars ... ok
[INFO] [stdout] test sugar::test::enum_delegation ... ok
[INFO] [stdout] test sugar::test::simple_enum_ignores_unknown_field_by_default ... ok
[INFO] [stdout] test sugar::test::handling_unknown_enum_variants ... ok
[INFO] [stdout] test sugar::test::simple_enum_struct_happy_path ... ok
[INFO] [stdout] test sugar::test::simple_enum_tuple_happy_path ... ok
[INFO] [stdout] test sugar::test::simple_enum_unknown_field_error_outer ... ok
[INFO] [stdout] test sugar::test::simple_enum_unknown_field_error_inner ... ok
[INFO] [stdout] test sugar::test::simple_enum_unknown_variant ... ok
[INFO] [stdout] test sugar::test::simple_struct_unknown_field_error ... ok
[INFO] [stdout] test sugar::test::simple_struct_ignores_unknown_field_by_default ... ok
[INFO] [stdout] test sugar::test::simple_struct_happy_path ... ok
[INFO] [stdout] test sugar::test::unknown_fields_collected_in_unknown ... ok
[INFO] [stdout] test unknown::test::deser_and_ser ... ok
[INFO] [stdout] test sugar::test::simple_enum_unit_happy_path ... ok
[INFO] [stdout] test sugar::test::struct_delegation ... ok
[INFO] [stdout] test wire::test::descriptor_conversion ... ok
[INFO] [stdout] test wire::test::integer_decode_detects_overflow ... ok
[INFO] [stdout] test wire::test::integer_decode_detects_overflow_in_overshifted_byte ... ok
[INFO] [stdout] test wire::test::integer_decode_eventually_gives_up_decoding_denorm ... ok
[INFO] [stdout] test wire::test::integer_encoding_and_decoding ... ok
[INFO] [stdout] test ser_des_builtin_tests::binary_heap_basically_works ... ok
[INFO] [stdout] test retrofit::test::ipv6addr ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_e_bts ... ok
[INFO] [stderr]    Doc-tests fourleaf
[INFO] [stdout] test ser_des_builtin_tests::ce_one_tuple ... ok
[INFO] [stdout] test ser_des_builtin_tests::ce_p_vec ... ok
[INFO] [stdout] test ser_des_builtin_tests::sf_byte_array ... ok
[INFO] [stdout] test stream::test::skip_up_to_top ... ok
[INFO] [stdout] test stream::test::struct_depth_tracking_handles_underflow ... ok
[INFO] [stdout] test stream::test::write_alloc_blob ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 203 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:20:1
[INFO] [stderr]     |
[INFO] [stderr]  20 | / fourleaf_retrofit!(struct Ipv4Addr : {} {} {
[INFO] [stderr]  21 | |     |_context, this|
[INFO] [stderr]  22 | |     (*) octets: [u8;4] = this.octets(),
[INFO] [stderr]  23 | |     { Ok(Ipv4Addr::new(octets[0], octets[1], octets[2], octets[3])) }
[INFO] [stderr]  24 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:27:1
[INFO] [stderr]     |
[INFO] [stderr]  27 | / fourleaf_retrofit!(struct Ipv6Addr : {} {} {
[INFO] [stderr]  28 | |     |_context, this|
[INFO] [stderr]  29 | |     (*) octets: [u8;16] = this.octets(),
[INFO] [stderr]  30 | |     { {
[INFO] [stderr] ...   |
[INFO] [stderr]  38 | |     } }
[INFO] [stderr]  39 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:41:1
[INFO] [stderr]     |
[INFO] [stderr]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stderr]  42 | |     |_context|
[INFO] [stderr]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stderr]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stderr] ...   |
[INFO] [stderr]  50 | |     },
[INFO] [stderr]  51 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:41:1
[INFO] [stderr]     |
[INFO] [stderr]  41 | / fourleaf_retrofit!(enum IpAddr : {} {} {
[INFO] [stderr]  42 | |     |_context|
[INFO] [stderr]  43 | |     [4] IpAddr::V4(ip) => {
[INFO] [stderr]  44 | |         (*) ip: Ipv4Addr = ip,
[INFO] [stderr] ...   |
[INFO] [stderr]  50 | |     },
[INFO] [stderr]  51 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:53:1
[INFO] [stderr]     |
[INFO] [stderr]  53 | / fourleaf_retrofit!(struct Duration : {} {} {
[INFO] [stderr]  54 | |     |context, this|
[INFO] [stderr]  55 | |     [1] secs: u64 = this.as_secs(),
[INFO] [stderr]  56 | |     [2] nsecs: u32 = this.subsec_nanos(),
[INFO] [stderr] ...   |
[INFO] [stderr]  62 | |     } }
[INFO] [stderr]  63 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:65:1
[INFO] [stderr]     |
[INFO] [stderr]  65 | / fourleaf_retrofit!(struct SocketAddrV4 : {} {} {
[INFO] [stderr]  66 | |     |_context, this|
[INFO] [stderr]  67 | |     [1] ip: Ipv4Addr = this.ip(),
[INFO] [stderr]  68 | |     [2] port: u16 = this.port(),
[INFO] [stderr]  69 | |     { Ok(SocketAddrV4::new(ip, port)) }
[INFO] [stderr]  70 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:72:1
[INFO] [stderr]     |
[INFO] [stderr]  72 | / fourleaf_retrofit!(struct SocketAddrV6 : {} {} {
[INFO] [stderr]  73 | |     |_context, this|
[INFO] [stderr]  74 | |     [1] ip: Ipv6Addr = this.ip(),
[INFO] [stderr]  75 | |     [2] port: u16 = this.port(),
[INFO] [stderr] ...   |
[INFO] [stderr]  78 | |     { Ok(SocketAddrV6::new(ip, port, flowinfo, scope_id)) }
[INFO] [stderr]  79 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:81:1
[INFO] [stderr]     |
[INFO] [stderr]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stderr]  82 | |     |_context|
[INFO] [stderr]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stderr]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stderr] ...   |
[INFO] [stderr]  90 | |     },
[INFO] [stderr]  91 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:81:1
[INFO] [stderr]     |
[INFO] [stderr]  81 | / fourleaf_retrofit!(enum SocketAddr : {} {} {
[INFO] [stderr]  82 | |     |_context|
[INFO] [stderr]  83 | |     [4] SocketAddr::V4(v4) => {
[INFO] [stderr]  84 | |         (*) v4: SocketAddrV4 = v4,
[INFO] [stderr] ...   |
[INFO] [stderr]  90 | |     },
[INFO] [stderr]  91 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:93:1
[INFO] [stderr]     |
[INFO] [stderr]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stderr]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stderr]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stderr]  96 | | } {
[INFO] [stderr] ...   |
[INFO] [stderr] 109 | |     },
[INFO] [stderr] 110 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/sugar.rs:453:11
[INFO] [stderr]     |
[INFO] [stderr] 453 |           )*;
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/retrofit.rs:93:1
[INFO] [stderr]     |
[INFO] [stderr]  93 | / fourleaf_retrofit!(enum Result : {
[INFO] [stderr]  94 | |     impl<T : ser::Serialize, E : ser::Serialize>
[INFO] [stderr]  95 | |     ser::Serialize for Result<T, E>
[INFO] [stderr]  96 | | } {
[INFO] [stderr] ...   |
[INFO] [stderr] 109 | |     },
[INFO] [stderr] 110 | | });
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `fourleaf_retrofit` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: 11 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 22) ... ignored
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 300) ... ignored
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 173) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 61) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 226) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 139) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 315) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 72) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 268) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 112) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 97) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 42) - compile ... ok
[INFO] [stdout] test src/sugar.rs - sugar::fourleaf_retrofit (line 350) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 247) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 357) ... ok
[INFO] [stdout] test src/lib.rs - (line 478) ... ok
[INFO] [stdout] test src/lib.rs - (line 137) ... ok
[INFO] [stdout] test src/lib.rs - (line 543) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 1.17s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "959118c4d16118f0265c9881d73c0ad36b60619f6e2dbd5e5556401f46368f15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "959118c4d16118f0265c9881d73c0ad36b60619f6e2dbd5e5556401f46368f15", kill_on_drop: false }`
[INFO] [stdout] 959118c4d16118f0265c9881d73c0ad36b60619f6e2dbd5e5556401f46368f15
