[INFO] cloning repository https://github.com/syntacticsugarglider/self-profile-ice-repro [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/syntacticsugarglider/self-profile-ice-repro" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsyntacticsugarglider%2Fself-profile-ice-repro", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsyntacticsugarglider%2Fself-profile-ice-repro'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a31f2f9ec5e0d27ac1807b44635df289e52aa8a8 [INFO] checking syntacticsugarglider/self-profile-ice-repro against master#40daf23eeb711dadf140b2536e67e3ff4c999196 for pr-142287 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsyntacticsugarglider%2Fself-profile-ice-repro" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/syntacticsugarglider/self-profile-ice-repro on toolchain 40daf23eeb711dadf140b2536e67e3ff4c999196 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+40daf23eeb711dadf140b2536e67e3ff4c999196" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/syntacticsugarglider/self-profile-ice-repro [INFO] finished tweaking git repo https://github.com/syntacticsugarglider/self-profile-ice-repro [INFO] tweaked toml for git repo https://github.com/syntacticsugarglider/self-profile-ice-repro written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/syntacticsugarglider/self-profile-ice-repro already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+40daf23eeb711dadf140b2536e67e3ff4c999196" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: /workspace/builds/worker-5-tc1/source/core-error/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Updating git repository `https://github.com/core-error/core-error` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded genio v0.2.1 [INFO] [stderr] Downloaded trybuild v1.0.30 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+40daf23eeb711dadf140b2536e67e3ff4c999196" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 06e584057512a5ac9cb4f9c934362b0f1efa0f4b26711d8388a60efe5755f28a [INFO] running `Command { std: "docker" "start" "-a" "06e584057512a5ac9cb4f9c934362b0f1efa0f4b26711d8388a60efe5755f28a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "06e584057512a5ac9cb4f9c934362b0f1efa0f4b26711d8388a60efe5755f28a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "06e584057512a5ac9cb4f9c934362b0f1efa0f4b26711d8388a60efe5755f28a", kill_on_drop: false }` [INFO] [stdout] 06e584057512a5ac9cb4f9c934362b0f1efa0f4b26711d8388a60efe5755f28a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+40daf23eeb711dadf140b2536e67e3ff4c999196" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e3cad1de52521128ee66cdd5ce9e4e40b2cd1fb49cb72af776133f97a07ef89d [INFO] running `Command { std: "docker" "start" "-a" "e3cad1de52521128ee66cdd5ce9e4e40b2cd1fb49cb72af776133f97a07ef89d", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/core-error/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling syn v1.0.32 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling serde_derive v1.0.113 [INFO] [stderr] Compiling serde v1.0.113 [INFO] [stderr] Compiling pin-project-internal v0.4.22 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling proc-macro-nested v0.1.6 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Checking once_cell v1.4.0 [INFO] [stderr] Compiling proc-macro-hack v0.5.16 [INFO] [stderr] Checking futures-core v0.3.5 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Compiling core-error v0.0.1-rc4 (https://github.com/core-error/core-error#9ffbf19b) [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling serde_json v1.0.55 [INFO] [stderr] Compiling rustversion v1.0.3 [INFO] [stderr] Compiling anyhow v1.0.31 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking termcolor v1.1.0 [INFO] [stderr] Checking glob v0.3.0 [INFO] [stderr] Checking dissimilar v1.0.2 [INFO] [stderr] Compiling core-error v0.0.1-rc4 (/opt/rustwide/workdir/core-error) [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking arrayvec v0.5.1 [INFO] [stderr] Checking genio v0.2.1 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking bytes v0.5.5 [INFO] [stderr] Checking pin-project-lite v0.1.7 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Checking synstructure v0.12.4 [INFO] [stderr] Checking thiserror-impl v1.0.11 (/opt/rustwide/workdir/thiserror/impl) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/attr.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn get(input: &[Attribute]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 27 | pub fn get(input: &[Attribute]) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn from_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn from_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn source_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn source_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:13:35 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) fn backtrace_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) fn backtrace_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 46 | pub(crate) fn from_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 46 | pub(crate) fn from_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:50:32 [INFO] [stdout] | [INFO] [stdout] 50 | pub(crate) fn source_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 50 | pub(crate) fn source_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:54:35 [INFO] [stdout] | [INFO] [stdout] 54 | pub(crate) fn backtrace_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 54 | pub(crate) fn backtrace_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/attr.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn get(input: &[Attribute]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 27 | pub fn get(input: &[Attribute]) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn from_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn from_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn source_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn source_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:13:35 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) fn backtrace_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) fn backtrace_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 46 | pub(crate) fn from_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 46 | pub(crate) fn from_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:50:32 [INFO] [stdout] | [INFO] [stdout] 50 | pub(crate) fn source_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 50 | pub(crate) fn source_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:54:35 [INFO] [stdout] | [INFO] [stdout] 54 | pub(crate) fn backtrace_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 54 | pub(crate) fn backtrace_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking derive v0.1.0 (/opt/rustwide/workdir/protocol/derive) [INFO] [stderr] Compiling futures-macro v0.3.5 [INFO] [stderr] Compiling ref-cast-impl v1.0.2 [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/attr.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn get(input: &[Attribute]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 27 | pub fn get(input: &[Attribute]) -> Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn from_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) fn from_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn source_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) fn source_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:13:35 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) fn backtrace_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) fn backtrace_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 46 | pub(crate) fn from_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 46 | pub(crate) fn from_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:50:32 [INFO] [stdout] | [INFO] [stdout] 50 | pub(crate) fn source_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 50 | pub(crate) fn source_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> thiserror/impl/src/prop.rs:54:35 [INFO] [stdout] | [INFO] [stdout] 54 | pub(crate) fn backtrace_field(&self) -> Option<&Field> { [INFO] [stdout] | ^^^^^ ------ [INFO] [stdout] | | || [INFO] [stdout] | | |the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 54 | pub(crate) fn backtrace_field(&self) -> Option<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ref-cast v1.0.2 [INFO] [stderr] Checking thiserror v1.0.11 (/opt/rustwide/workdir/thiserror) [INFO] [stderr] Checking pin-project v0.4.22 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking futures-executor v0.3.5 [INFO] [stderr] Checking piper v0.1.3 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking protocol v0.1.0 (/opt/rustwide/workdir/protocol) [INFO] [stderr] Checking core-futures-io v0.1.0 (/opt/rustwide/workdir/core-futures-io) [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/chain.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pin_project! { [INFO] [stdout] 12 | | #[must_use = "streams do nothing unless polled"] [INFO] [stdout] 13 | | #[cfg_attr(docsrs, doc(cfg(feature = "io-util")))] [INFO] [stdout] 14 | | pub struct Chain { [INFO] [stdout] ... | [INFO] [stdout] 21 | | } [INFO] [stdout] | |_^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:122:1 [INFO] [stdout] | [INFO] [stdout] 122 | reader8!(ReadU8, u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | reader8!(ReadI8, i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:125:1 [INFO] [stdout] | [INFO] [stdout] 125 | reader!(ReadU16, u16, get_u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:126:1 [INFO] [stdout] | [INFO] [stdout] 126 | reader!(ReadU32, u32, get_u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:127:1 [INFO] [stdout] | [INFO] [stdout] 127 | reader!(ReadU64, u64, get_u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:128:1 [INFO] [stdout] | [INFO] [stdout] 128 | reader!(ReadU128, u128, get_u128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:130:1 [INFO] [stdout] | [INFO] [stdout] 130 | reader!(ReadI16, i16, get_i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:131:1 [INFO] [stdout] | [INFO] [stdout] 131 | reader!(ReadI32, i32, get_i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:132:1 [INFO] [stdout] | [INFO] [stdout] 132 | reader!(ReadI64, i64, get_i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:133:1 [INFO] [stdout] | [INFO] [stdout] 133 | reader!(ReadI128, i128, get_i128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/take.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pin_project! { [INFO] [stdout] 12 | | #[derive(Debug)] [INFO] [stdout] 13 | | #[must_use = "streams do nothing unless you `.await` or poll them"] [INFO] [stdout] 14 | | #[cfg_attr(docsrs, doc(cfg(feature = "io-util")))] [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:108:1 [INFO] [stdout] | [INFO] [stdout] 108 | writer8!(WriteU8, u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | writer8!(WriteI8, i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | writer!(WriteU16, u16, put_u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:112:1 [INFO] [stdout] | [INFO] [stdout] 112 | writer!(WriteU32, u32, put_u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:113:1 [INFO] [stdout] | [INFO] [stdout] 113 | writer!(WriteU64, u64, put_u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:114:1 [INFO] [stdout] | [INFO] [stdout] 114 | writer!(WriteU128, u128, put_u128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | writer!(WriteI16, i16, put_i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:117:1 [INFO] [stdout] | [INFO] [stdout] 117 | writer!(WriteI32, i32, put_i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:118:1 [INFO] [stdout] | [INFO] [stdout] 118 | writer!(WriteI64, i64, put_i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:119:1 [INFO] [stdout] | [INFO] [stdout] 119 | writer!(WriteI128, i128, put_i128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/chain.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pin_project! { [INFO] [stdout] 12 | | #[must_use = "streams do nothing unless polled"] [INFO] [stdout] 13 | | #[cfg_attr(docsrs, doc(cfg(feature = "io-util")))] [INFO] [stdout] 14 | | pub struct Chain { [INFO] [stdout] ... | [INFO] [stdout] 21 | | } [INFO] [stdout] | |_^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:122:1 [INFO] [stdout] | [INFO] [stdout] 122 | reader8!(ReadU8, u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:123:1 [INFO] [stdout] | [INFO] [stdout] 123 | reader8!(ReadI8, i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:125:1 [INFO] [stdout] | [INFO] [stdout] 125 | reader!(ReadU16, u16, get_u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:126:1 [INFO] [stdout] | [INFO] [stdout] 126 | reader!(ReadU32, u32, get_u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:127:1 [INFO] [stdout] | [INFO] [stdout] 127 | reader!(ReadU64, u64, get_u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:128:1 [INFO] [stdout] | [INFO] [stdout] 128 | reader!(ReadU128, u128, get_u128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:130:1 [INFO] [stdout] | [INFO] [stdout] 130 | reader!(ReadI16, i16, get_i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:131:1 [INFO] [stdout] | [INFO] [stdout] 131 | reader!(ReadI32, i32, get_i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:132:1 [INFO] [stdout] | [INFO] [stdout] 132 | reader!(ReadI64, i64, get_i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/read_int.rs:133:1 [INFO] [stdout] | [INFO] [stdout] 133 | reader!(ReadI128, i128, get_i128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `reader` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/read/take.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pin_project! { [INFO] [stdout] 12 | | #[derive(Debug)] [INFO] [stdout] 13 | | #[must_use = "streams do nothing unless you `.await` or poll them"] [INFO] [stdout] 14 | | #[cfg_attr(docsrs, doc(cfg(feature = "io-util")))] [INFO] [stdout] ... | [INFO] [stdout] 20 | | } [INFO] [stdout] | |_^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:108:1 [INFO] [stdout] | [INFO] [stdout] 108 | writer8!(WriteU8, u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | writer8!(WriteI8, i8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer8` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:111:1 [INFO] [stdout] | [INFO] [stdout] 111 | writer!(WriteU16, u16, put_u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:112:1 [INFO] [stdout] | [INFO] [stdout] 112 | writer!(WriteU32, u32, put_u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:113:1 [INFO] [stdout] | [INFO] [stdout] 113 | writer!(WriteU64, u64, put_u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:114:1 [INFO] [stdout] | [INFO] [stdout] 114 | writer!(WriteU128, u128, put_u128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:116:1 [INFO] [stdout] | [INFO] [stdout] 116 | writer!(WriteI16, i16, put_i16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:117:1 [INFO] [stdout] | [INFO] [stdout] 117 | writer!(WriteI32, i32, put_i32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:118:1 [INFO] [stdout] | [INFO] [stdout] 118 | writer!(WriteI64, i64, put_i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> core-futures-io/src/ext/write/write_int.rs:119:1 [INFO] [stdout] | [INFO] [stdout] 119 | writer!(WriteI128, i128, put_i128); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `$crate::__pin_project_internal` which comes from the expansion of the macro `writer` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking erasure-traits v0.1.0 (/opt/rustwide/workdir/erasure-traits) [INFO] [stderr] Checking toml v0.5.6 [INFO] [stderr] Checking bincode v1.2.1 [INFO] [stderr] Checking trybuild v1.0.30 [INFO] [stdout] warning: unexpected `cfg` condition name: `thiserror_nightly_testing` [INFO] [stdout] --> thiserror/tests/test_option.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg_attr(thiserror_nightly_testing, feature(backtrace))] [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(thiserror_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(thiserror_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see 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: `thiserror_nightly_testing` [INFO] [stdout] --> thiserror/tests/test_option.rs:3:7 [INFO] [stdout] | [INFO] [stdout] 3 | #[cfg(thiserror_nightly_testing)] [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(thiserror_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(thiserror_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `thiserror_nightly_testing` [INFO] [stdout] --> thiserror/tests/test_option.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | #[cfg(thiserror_nightly_testing)] [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(thiserror_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(thiserror_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `thiserror_nightly_testing` [INFO] [stdout] --> thiserror/tests/test_option.rs:104:16 [INFO] [stdout] | [INFO] [stdout] 104 | #[cfg_attr(not(thiserror_nightly_testing), ignore)] [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(thiserror_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(thiserror_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Error` is never used [INFO] [stdout] --> thiserror/tests/test_display.rs:147:14 [INFO] [stdout] | [INFO] [stdout] 147 | pub enum Error {} [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:330:25 [INFO] [stdout] | [INFO] [stdout] 330 | replace(this, Array0001Unravel::Fork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 330 | let _ = replace(this, Array0001Unravel::Fork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:338:21 [INFO] [stdout] | [INFO] [stdout] 338 | replace(this, Array0001Unravel::Write(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 338 | let _ = replace(this, Array0001Unravel::Write(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | replace(this, Array0001Unravel::Flush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 346 | let _ = replace(this, Array0001Unravel::Flush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:356:25 [INFO] [stdout] | [INFO] [stdout] 356 | replace(this, Array0001Unravel::Target(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 356 | let _ = replace(this, Array0001Unravel::Target(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:364:21 [INFO] [stdout] | [INFO] [stdout] 364 | replace(this, Array0001Unravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 364 | let _ = replace(this, Array0001Unravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:397:21 [INFO] [stdout] | [INFO] [stdout] 397 | replace(this, Array0001Coalesce::Join(ctx.join(handle))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 397 | let _ = replace(this, Array0001Coalesce::Join(ctx.join(handle))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | replace(this, OptionUnravel::Flush(None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 117 | let _ = replace(this, OptionUnravel::Flush(None)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:122:25 [INFO] [stdout] | [INFO] [stdout] 122 | replace(this, OptionUnravel::Fork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 122 | let _ = replace(this, OptionUnravel::Fork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:130:21 [INFO] [stdout] | [INFO] [stdout] 130 | replace(this, OptionUnravel::Write(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 130 | let _ = replace(this, OptionUnravel::Write(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:139:25 [INFO] [stdout] | [INFO] [stdout] 139 | replace(this, OptionUnravel::Flush(Some(target))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 139 | let _ = replace(this, OptionUnravel::Flush(Some(target))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:150:29 [INFO] [stdout] | [INFO] [stdout] 150 | ... replace(this, OptionUnravel::Target(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 150 | let _ = replace(this, OptionUnravel::Target(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:152:29 [INFO] [stdout] | [INFO] [stdout] 152 | ... replace(this, OptionUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 152 | let _ = replace(this, OptionUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | replace(this, OptionUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 162 | let _ = replace(this, OptionUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:197:29 [INFO] [stdout] | [INFO] [stdout] 197 | ... replace(this, OptionCoalesce::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 197 | let _ = replace(this, OptionCoalesce::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:201:29 [INFO] [stdout] | [INFO] [stdout] 201 | ... replace(this, OptionCoalesce::Join(ctx.join(handle))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 201 | let _ = replace(this, OptionCoalesce::Join(ctx.join(handle))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:169:25 [INFO] [stdout] | [INFO] [stdout] 169 | replace(this, ResultUnravel::OkFork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 169 | let _ = replace(this, ResultUnravel::OkFork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:177:21 [INFO] [stdout] | [INFO] [stdout] 177 | replace(this, ResultUnravel::OkWrite(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 177 | let _ = replace(this, ResultUnravel::OkWrite(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:182:25 [INFO] [stdout] | [INFO] [stdout] 182 | replace(this, ResultUnravel::ErrFork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 182 | let _ = replace(this, ResultUnravel::ErrFork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:190:21 [INFO] [stdout] | [INFO] [stdout] 190 | replace(this, ResultUnravel::ErrWrite(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 190 | let _ = replace(this, ResultUnravel::ErrWrite(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:198:25 [INFO] [stdout] | [INFO] [stdout] 198 | replace(this, ResultUnravel::OkFlush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 198 | let _ = replace(this, ResultUnravel::OkFlush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:210:25 [INFO] [stdout] | [INFO] [stdout] 210 | replace(this, ResultUnravel::ErrFlush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = replace(this, ResultUnravel::ErrFlush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:220:25 [INFO] [stdout] | [INFO] [stdout] 220 | replace(this, ResultUnravel::OkTarget(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 220 | let _ = replace(this, ResultUnravel::OkTarget(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | replace(this, ResultUnravel::ErrTarget(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 230 | let _ = replace(this, ResultUnravel::ErrTarget(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:238:21 [INFO] [stdout] | [INFO] [stdout] 238 | replace(this, ResultUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 238 | let _ = replace(this, ResultUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:246:21 [INFO] [stdout] | [INFO] [stdout] 246 | replace(this, ResultUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 246 | let _ = replace(this, ResultUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:294:29 [INFO] [stdout] | [INFO] [stdout] 294 | / ... replace( [INFO] [stdout] 295 | | ... this, [INFO] [stdout] 296 | | ... ResultCoalesce::OkJoin(>::join(ctx, data)), [INFO] [stdout] 297 | | ... ); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 294 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:300:29 [INFO] [stdout] | [INFO] [stdout] 300 | / ... replace( [INFO] [stdout] 301 | | ... this, [INFO] [stdout] 302 | | ... ResultCoalesce::ErrJoin(>::join(ctx, data)), [INFO] [stdout] 303 | | ... ); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 300 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:649:21 [INFO] [stdout] | [INFO] [stdout] 649 | / replace( [INFO] [stdout] 650 | | &mut this.state, [INFO] [stdout] 651 | | Tuple2UnravelState::T( [INFO] [stdout] 652 | | ctx.fork(this.data.0.take().expect("data incomplete")), [INFO] [stdout] 653 | | ), [INFO] [stdout] 654 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 649 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:661:21 [INFO] [stdout] | [INFO] [stdout] 661 | / replace( [INFO] [stdout] 662 | | &mut this.state, [INFO] [stdout] 663 | | Tuple2UnravelState::U( [INFO] [stdout] 664 | | ctx.fork(this.data.1.take().expect("data incomplete")), [INFO] [stdout] 665 | | ), [INFO] [stdout] 666 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 661 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:673:21 [INFO] [stdout] | [INFO] [stdout] 673 | replace(&mut this.state, Tuple2UnravelState::Writing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 673 | let _ = replace(&mut this.state, Tuple2UnravelState::Writing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:683:21 [INFO] [stdout] | [INFO] [stdout] 683 | replace(&mut this.state, Tuple2UnravelState::Flushing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 683 | let _ = replace(&mut this.state, Tuple2UnravelState::Flushing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:689:21 [INFO] [stdout] | [INFO] [stdout] 689 | replace(&mut this.state, Tuple2UnravelState::Target); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 689 | let _ = replace(&mut this.state, Tuple2UnravelState::Target); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:695:21 [INFO] [stdout] | [INFO] [stdout] 695 | replace(&mut this.state, Tuple2UnravelState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 695 | let _ = replace(&mut this.state, Tuple2UnravelState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:746:21 [INFO] [stdout] | [INFO] [stdout] 746 | / replace( [INFO] [stdout] 747 | | &mut this.state, [INFO] [stdout] 748 | | Tuple2CoalesceState::T(>::join(ctx, first)), [INFO] [stdout] 749 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 746 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:757:21 [INFO] [stdout] | [INFO] [stdout] 757 | / replace( [INFO] [stdout] 758 | | &mut this.state, [INFO] [stdout] 759 | | Tuple2CoalesceState::U(>::join( [INFO] [stdout] 760 | | ctx, [INFO] [stdout] 761 | | this.handles.1.take().expect("handles incomplete"), [INFO] [stdout] 762 | | )), [INFO] [stdout] 763 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 757 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:769:21 [INFO] [stdout] | [INFO] [stdout] 769 | replace(&mut this.state, Tuple2CoalesceState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 769 | let _ = replace(&mut this.state, Tuple2CoalesceState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:981:25 [INFO] [stdout] | [INFO] [stdout] 981 | replace(&mut this.state, FlatUnravelState::Fork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 981 | let _ = replace(&mut this.state, FlatUnravelState::Fork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:989:21 [INFO] [stdout] | [INFO] [stdout] 989 | replace(&mut this.state, FlatUnravelState::Write(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 989 | let _ = replace(&mut this.state, FlatUnravelState::Write(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:997:25 [INFO] [stdout] | [INFO] [stdout] 997 | replace(&mut this.state, FlatUnravelState::Flush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 997 | let _ = replace(&mut this.state, FlatUnravelState::Flush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1007:25 [INFO] [stdout] | [INFO] [stdout] 1007 | replace(&mut this.state, FlatUnravelState::Target(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1007 | let _ = replace(&mut this.state, FlatUnravelState::Target(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1015:21 [INFO] [stdout] | [INFO] [stdout] 1015 | replace(&mut this.state, FlatUnravelState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1015 | let _ = replace(&mut this.state, FlatUnravelState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1048:21 [INFO] [stdout] | [INFO] [stdout] 1048 | replace(&mut this.state, FlatCoalesceState::Join(ctx.join(handle))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1048 | let _ = replace(&mut this.state, FlatCoalesceState::Join(ctx.join(handle))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1053:21 [INFO] [stdout] | [INFO] [stdout] 1053 | replace(&mut this.state, FlatCoalesceState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1053 | let _ = replace(&mut this.state, FlatCoalesceState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:226:33 [INFO] [stdout] | [INFO] [stdout] 226 | / replace( [INFO] [stdout] 227 | | &mut this.state, [INFO] [stdout] 228 | | $ustate::$first( [INFO] [stdout] 229 | | ctx.fork(this.data.0.take().expect("data incomplete")), [INFO] [stdout] 230 | | ), [INFO] [stdout] 231 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 226 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:238:33 [INFO] [stdout] | [INFO] [stdout] 238 | replace(&mut this.state, $ustate::$second(ctx.fork(this.data.1.take().expect("data incomplete")))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 238 | let _ = replace(&mut this.state, $ustate::$second(ctx.fork(this.data.1.take().expect("data incomplete")))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:246:33 [INFO] [stdout] | [INFO] [stdout] 246 | replace(&mut this.state, $ustate::$next(ctx.fork(this.data.$next_n.take().expect("data incomplete")))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 246 | let _ = replace(&mut this.state, $ustate::$next(ctx.fork(this.data.$next_n.take().expect("data incomplete")))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:254:33 [INFO] [stdout] | [INFO] [stdout] 254 | replace(&mut this.state, $ustate::Writing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 254 | let _ = replace(&mut this.state, $ustate::Writing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:265:33 [INFO] [stdout] | [INFO] [stdout] 265 | replace(&mut this.state, $ustate::Flushing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 265 | let _ = replace(&mut this.state, $ustate::Flushing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:271:33 [INFO] [stdout] | [INFO] [stdout] 271 | replace(&mut this.state, $ustate::Target); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 271 | let _ = replace(&mut this.state, $ustate::Target); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:277:33 [INFO] [stdout] | [INFO] [stdout] 277 | replace(&mut this.state, $ustate::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 277 | let _ = replace(&mut this.state, $ustate::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:327:33 [INFO] [stdout] | [INFO] [stdout] 327 | / replace( [INFO] [stdout] 328 | | &mut this.state, [INFO] [stdout] 329 | | $cstate::$first(>::join(ctx, first)), [INFO] [stdout] 330 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 327 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:338:33 [INFO] [stdout] | [INFO] [stdout] 338 | / replace( [INFO] [stdout] 339 | | &mut this.state, [INFO] [stdout] 340 | | $cstate::$second(>::join( [INFO] [stdout] 341 | | ctx, [INFO] [stdout] 342 | | this.handles.1.take().expect("handles incomplete"), [INFO] [stdout] 343 | | )), [INFO] [stdout] 344 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 338 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:352:33 [INFO] [stdout] | [INFO] [stdout] 352 | / replace( [INFO] [stdout] 353 | | &mut this.state, [INFO] [stdout] 354 | | $cstate::$next(>::join( [INFO] [stdout] 355 | | ctx, [INFO] [stdout] 356 | | this.handles.$next_n.take().expect("handles incomplete"), [INFO] [stdout] 357 | | )), [INFO] [stdout] 358 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 352 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:364:33 [INFO] [stdout] | [INFO] [stdout] 364 | replace(&mut this.state, $cstate::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 364 | let _ = replace(&mut this.state, $cstate::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:330:25 [INFO] [stdout] | [INFO] [stdout] 330 | replace(this, Array0001Unravel::Fork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 330 | let _ = replace(this, Array0001Unravel::Fork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:338:21 [INFO] [stdout] | [INFO] [stdout] 338 | replace(this, Array0001Unravel::Write(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 338 | let _ = replace(this, Array0001Unravel::Write(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | replace(this, Array0001Unravel::Flush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 346 | let _ = replace(this, Array0001Unravel::Flush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:356:25 [INFO] [stdout] | [INFO] [stdout] 356 | replace(this, Array0001Unravel::Target(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 356 | let _ = replace(this, Array0001Unravel::Target(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:364:21 [INFO] [stdout] | [INFO] [stdout] 364 | replace(this, Array0001Unravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 364 | let _ = replace(this, Array0001Unravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/arrays.rs:397:21 [INFO] [stdout] | [INFO] [stdout] 397 | replace(this, Array0001Coalesce::Join(ctx.join(handle))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 397 | let _ = replace(this, Array0001Coalesce::Join(ctx.join(handle))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | replace(this, OptionUnravel::Flush(None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 117 | let _ = replace(this, OptionUnravel::Flush(None)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:122:25 [INFO] [stdout] | [INFO] [stdout] 122 | replace(this, OptionUnravel::Fork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 122 | let _ = replace(this, OptionUnravel::Fork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:130:21 [INFO] [stdout] | [INFO] [stdout] 130 | replace(this, OptionUnravel::Write(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 130 | let _ = replace(this, OptionUnravel::Write(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:139:25 [INFO] [stdout] | [INFO] [stdout] 139 | replace(this, OptionUnravel::Flush(Some(target))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 139 | let _ = replace(this, OptionUnravel::Flush(Some(target))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:150:29 [INFO] [stdout] | [INFO] [stdout] 150 | ... replace(this, OptionUnravel::Target(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 150 | let _ = replace(this, OptionUnravel::Target(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:152:29 [INFO] [stdout] | [INFO] [stdout] 152 | ... replace(this, OptionUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 152 | let _ = replace(this, OptionUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | replace(this, OptionUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 162 | let _ = replace(this, OptionUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:197:29 [INFO] [stdout] | [INFO] [stdout] 197 | ... replace(this, OptionCoalesce::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 197 | let _ = replace(this, OptionCoalesce::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/option.rs:201:29 [INFO] [stdout] | [INFO] [stdout] 201 | ... replace(this, OptionCoalesce::Join(ctx.join(handle))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 201 | let _ = replace(this, OptionCoalesce::Join(ctx.join(handle))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:169:25 [INFO] [stdout] | [INFO] [stdout] 169 | replace(this, ResultUnravel::OkFork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 169 | let _ = replace(this, ResultUnravel::OkFork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:177:21 [INFO] [stdout] | [INFO] [stdout] 177 | replace(this, ResultUnravel::OkWrite(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 177 | let _ = replace(this, ResultUnravel::OkWrite(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:182:25 [INFO] [stdout] | [INFO] [stdout] 182 | replace(this, ResultUnravel::ErrFork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 182 | let _ = replace(this, ResultUnravel::ErrFork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:190:21 [INFO] [stdout] | [INFO] [stdout] 190 | replace(this, ResultUnravel::ErrWrite(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 190 | let _ = replace(this, ResultUnravel::ErrWrite(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:198:25 [INFO] [stdout] | [INFO] [stdout] 198 | replace(this, ResultUnravel::OkFlush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 198 | let _ = replace(this, ResultUnravel::OkFlush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:210:25 [INFO] [stdout] | [INFO] [stdout] 210 | replace(this, ResultUnravel::ErrFlush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = replace(this, ResultUnravel::ErrFlush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:220:25 [INFO] [stdout] | [INFO] [stdout] 220 | replace(this, ResultUnravel::OkTarget(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 220 | let _ = replace(this, ResultUnravel::OkTarget(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | replace(this, ResultUnravel::ErrTarget(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 230 | let _ = replace(this, ResultUnravel::ErrTarget(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:238:21 [INFO] [stdout] | [INFO] [stdout] 238 | replace(this, ResultUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 238 | let _ = replace(this, ResultUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:246:21 [INFO] [stdout] | [INFO] [stdout] 246 | replace(this, ResultUnravel::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 246 | let _ = replace(this, ResultUnravel::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:294:29 [INFO] [stdout] | [INFO] [stdout] 294 | / ... replace( [INFO] [stdout] 295 | | ... this, [INFO] [stdout] 296 | | ... ResultCoalesce::OkJoin(>::join(ctx, data)), [INFO] [stdout] 297 | | ... ); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 294 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/result.rs:300:29 [INFO] [stdout] | [INFO] [stdout] 300 | / ... replace( [INFO] [stdout] 301 | | ... this, [INFO] [stdout] 302 | | ... ResultCoalesce::ErrJoin(>::join(ctx, data)), [INFO] [stdout] 303 | | ... ); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 300 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:649:21 [INFO] [stdout] | [INFO] [stdout] 649 | / replace( [INFO] [stdout] 650 | | &mut this.state, [INFO] [stdout] 651 | | Tuple2UnravelState::T( [INFO] [stdout] 652 | | ctx.fork(this.data.0.take().expect("data incomplete")), [INFO] [stdout] 653 | | ), [INFO] [stdout] 654 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 649 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:661:21 [INFO] [stdout] | [INFO] [stdout] 661 | / replace( [INFO] [stdout] 662 | | &mut this.state, [INFO] [stdout] 663 | | Tuple2UnravelState::U( [INFO] [stdout] 664 | | ctx.fork(this.data.1.take().expect("data incomplete")), [INFO] [stdout] 665 | | ), [INFO] [stdout] 666 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 661 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:673:21 [INFO] [stdout] | [INFO] [stdout] 673 | replace(&mut this.state, Tuple2UnravelState::Writing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 673 | let _ = replace(&mut this.state, Tuple2UnravelState::Writing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:683:21 [INFO] [stdout] | [INFO] [stdout] 683 | replace(&mut this.state, Tuple2UnravelState::Flushing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 683 | let _ = replace(&mut this.state, Tuple2UnravelState::Flushing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:689:21 [INFO] [stdout] | [INFO] [stdout] 689 | replace(&mut this.state, Tuple2UnravelState::Target); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 689 | let _ = replace(&mut this.state, Tuple2UnravelState::Target); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:695:21 [INFO] [stdout] | [INFO] [stdout] 695 | replace(&mut this.state, Tuple2UnravelState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 695 | let _ = replace(&mut this.state, Tuple2UnravelState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:746:21 [INFO] [stdout] | [INFO] [stdout] 746 | / replace( [INFO] [stdout] 747 | | &mut this.state, [INFO] [stdout] 748 | | Tuple2CoalesceState::T(>::join(ctx, first)), [INFO] [stdout] 749 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 746 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:757:21 [INFO] [stdout] | [INFO] [stdout] 757 | / replace( [INFO] [stdout] 758 | | &mut this.state, [INFO] [stdout] 759 | | Tuple2CoalesceState::U(>::join( [INFO] [stdout] 760 | | ctx, [INFO] [stdout] 761 | | this.handles.1.take().expect("handles incomplete"), [INFO] [stdout] 762 | | )), [INFO] [stdout] 763 | | ); [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 757 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:769:21 [INFO] [stdout] | [INFO] [stdout] 769 | replace(&mut this.state, Tuple2CoalesceState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 769 | let _ = replace(&mut this.state, Tuple2CoalesceState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:981:25 [INFO] [stdout] | [INFO] [stdout] 981 | replace(&mut this.state, FlatUnravelState::Fork(ctx.fork(data))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 981 | let _ = replace(&mut this.state, FlatUnravelState::Fork(ctx.fork(data))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:989:21 [INFO] [stdout] | [INFO] [stdout] 989 | replace(&mut this.state, FlatUnravelState::Write(handle, target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 989 | let _ = replace(&mut this.state, FlatUnravelState::Write(handle, target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:997:25 [INFO] [stdout] | [INFO] [stdout] 997 | replace(&mut this.state, FlatUnravelState::Flush(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 997 | let _ = replace(&mut this.state, FlatUnravelState::Flush(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1007:25 [INFO] [stdout] | [INFO] [stdout] 1007 | replace(&mut this.state, FlatUnravelState::Target(target)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1007 | let _ = replace(&mut this.state, FlatUnravelState::Target(target)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1015:21 [INFO] [stdout] | [INFO] [stdout] 1015 | replace(&mut this.state, FlatUnravelState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1015 | let _ = replace(&mut this.state, FlatUnravelState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1048:21 [INFO] [stdout] | [INFO] [stdout] 1048 | replace(&mut this.state, FlatCoalesceState::Join(ctx.join(handle))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1048 | let _ = replace(&mut this.state, FlatCoalesceState::Join(ctx.join(handle))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:1053:21 [INFO] [stdout] | [INFO] [stdout] 1053 | replace(&mut this.state, FlatCoalesceState::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1053 | let _ = replace(&mut this.state, FlatCoalesceState::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:226:33 [INFO] [stdout] | [INFO] [stdout] 226 | / replace( [INFO] [stdout] 227 | | &mut this.state, [INFO] [stdout] 228 | | $ustate::$first( [INFO] [stdout] 229 | | ctx.fork(this.data.0.take().expect("data incomplete")), [INFO] [stdout] 230 | | ), [INFO] [stdout] 231 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 226 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:238:33 [INFO] [stdout] | [INFO] [stdout] 238 | replace(&mut this.state, $ustate::$second(ctx.fork(this.data.1.take().expect("data incomplete")))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 238 | let _ = replace(&mut this.state, $ustate::$second(ctx.fork(this.data.1.take().expect("data incomplete")))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:246:33 [INFO] [stdout] | [INFO] [stdout] 246 | replace(&mut this.state, $ustate::$next(ctx.fork(this.data.$next_n.take().expect("data incomplete")))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 246 | let _ = replace(&mut this.state, $ustate::$next(ctx.fork(this.data.$next_n.take().expect("data incomplete")))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:254:33 [INFO] [stdout] | [INFO] [stdout] 254 | replace(&mut this.state, $ustate::Writing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 254 | let _ = replace(&mut this.state, $ustate::Writing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:265:33 [INFO] [stdout] | [INFO] [stdout] 265 | replace(&mut this.state, $ustate::Flushing); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 265 | let _ = replace(&mut this.state, $ustate::Flushing); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:271:33 [INFO] [stdout] | [INFO] [stdout] 271 | replace(&mut this.state, $ustate::Target); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 271 | let _ = replace(&mut this.state, $ustate::Target); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:277:33 [INFO] [stdout] | [INFO] [stdout] 277 | replace(&mut this.state, $ustate::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 277 | let _ = replace(&mut this.state, $ustate::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:327:33 [INFO] [stdout] | [INFO] [stdout] 327 | / replace( [INFO] [stdout] 328 | | &mut this.state, [INFO] [stdout] 329 | | $cstate::$first(>::join(ctx, first)), [INFO] [stdout] 330 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 327 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:338:33 [INFO] [stdout] | [INFO] [stdout] 338 | / replace( [INFO] [stdout] 339 | | &mut this.state, [INFO] [stdout] 340 | | $cstate::$second(>::join( [INFO] [stdout] 341 | | ctx, [INFO] [stdout] 342 | | this.handles.1.take().expect("handles incomplete"), [INFO] [stdout] 343 | | )), [INFO] [stdout] 344 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 338 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:352:33 [INFO] [stdout] | [INFO] [stdout] 352 | / replace( [INFO] [stdout] 353 | | &mut this.state, [INFO] [stdout] 354 | | $cstate::$next(>::join( [INFO] [stdout] 355 | | ctx, [INFO] [stdout] 356 | | this.handles.$next_n.take().expect("handles incomplete"), [INFO] [stdout] 357 | | )), [INFO] [stdout] 358 | | ); [INFO] [stdout] | |_________________________________^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 352 | let _ = replace( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> protocol/src/tuples.rs:364:33 [INFO] [stdout] | [INFO] [stdout] 364 | replace(&mut this.state, $cstate::Done); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1098 | / tuple_impls! { [INFO] [stdout] 1099 | | Tuple3Coalesce Tuple3CoalesceState Tuple3Unravel Tuple3UnravelState Tuple3UnravelError Tuple3CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1100 | | Tuple4Coalesce Tuple4CoalesceState Tuple4Unravel Tuple4UnravelState Tuple4UnravelError Tuple4CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1101 | | Tuple5Coalesce Tuple5CoalesceState Tuple5Unravel Tuple5UnravelState Tuple5UnravelError Tuple5CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] ... | [INFO] [stdout] 1112 | | Tuple16Coalesce Tuple16CoalesceState Tuple16Unravel Tuple16UnravelState Tuple16UnravelError Tuple16CoalesceError => (0 (T0 T1) 1 (T1 ... [INFO] [stdout] 1113 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: this warning originates in the macro `tuple_impls` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 364 | let _ = replace(&mut this.state, $cstate::Done); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking protocol-mve-transport v0.1.0 (/opt/rustwide/workdir/protocol-mve-transport) [INFO] [stderr] Checking compilemem v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `core::pin::Pin` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use core::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Sink` and `Stream` [INFO] [stdout] --> src/main.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | use futures::{Sink, Stream}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::pin::Pin` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use core::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Sink` and `Stream` [INFO] [stdout] --> src/main.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | use futures::{Sink, Stream}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tester` is never constructed [INFO] [stdout] --> src/main.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | struct Tester [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Id` and up 2 bodies [INFO] [stdout] 10 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 11 | pub struct Id([u8; 32]); [INFO] [stdout] | -- `Id` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Id` and up 2 bodies [INFO] [stdout] 10 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 11 | pub struct Id([u8; 32]); [INFO] [stdout] | -- `Id` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Item` and up 2 bodies [INFO] [stdout] 14 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 15 | pub struct Item { [INFO] [stdout] | ---- `Item` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Item` and up 2 bodies [INFO] [stdout] 14 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 15 | pub struct Item { [INFO] [stdout] | ---- `Item` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_TypePosition` and up 2 bodies [INFO] [stdout] 21 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 22 | pub enum TypePosition { [INFO] [stdout] | ------------ `TypePosition` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_TypePosition` and up 2 bodies [INFO] [stdout] 21 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 22 | pub enum TypePosition { [INFO] [stdout] | ------------ `TypePosition` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Generics` and up 2 bodies [INFO] [stdout] 28 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 29 | pub struct Generics { [INFO] [stdout] | -------- `Generics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Generics` and up 2 bodies [INFO] [stdout] 28 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 29 | pub struct Generics { [INFO] [stdout] | -------- `Generics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Binding` and up 2 bodies [INFO] [stdout] 35 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 36 | pub struct Binding { [INFO] [stdout] | ------- `Binding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Binding` and up 2 bodies [INFO] [stdout] 35 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 36 | pub struct Binding { [INFO] [stdout] | ------- `Binding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Product` and up 2 bodies [INFO] [stdout] 42 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 43 | pub struct Product { [INFO] [stdout] | ------- `Product` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Product` and up 2 bodies [INFO] [stdout] 42 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 43 | pub struct Product { [INFO] [stdout] | ------- `Product` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:47:1 [INFO] [stdout] | [INFO] [stdout] 47 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Variant` and up 2 bodies [INFO] [stdout] 48 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 49 | pub struct Variant { [INFO] [stdout] | ------- `Variant` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:47:1 [INFO] [stdout] | [INFO] [stdout] 47 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Variant` and up 2 bodies [INFO] [stdout] 48 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 49 | pub struct Variant { [INFO] [stdout] | ------- `Variant` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Receiver` and up 2 bodies [INFO] [stdout] 55 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 56 | pub enum Receiver { [INFO] [stdout] | -------- `Receiver` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Receiver` and up 2 bodies [INFO] [stdout] 55 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 56 | pub enum Receiver { [INFO] [stdout] | -------- `Receiver` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Method` and up 2 bodies [INFO] [stdout] 63 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 64 | pub struct Method { [INFO] [stdout] | ------ `Method` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Method` and up 2 bodies [INFO] [stdout] 63 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 64 | pub struct Method { [INFO] [stdout] | ------ `Method` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Capture` and up 2 bodies [INFO] [stdout] 71 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 72 | pub enum Capture { [INFO] [stdout] | ------- `Capture` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Capture` and up 2 bodies [INFO] [stdout] 71 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 72 | pub enum Capture { [INFO] [stdout] | ------- `Capture` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Type` and up 2 bodies [INFO] [stdout] 79 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 80 | pub enum Type { [INFO] [stdout] | ---- `Type` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Type` and up 2 bodies [INFO] [stdout] 79 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 80 | pub enum Type { [INFO] [stdout] | ---- `Type` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Tester` is never constructed [INFO] [stdout] --> src/main.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | struct Tester [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Id` and up 2 bodies [INFO] [stdout] 10 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 11 | pub struct Id([u8; 32]); [INFO] [stdout] | -- `Id` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Id` and up 2 bodies [INFO] [stdout] 10 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 11 | pub struct Id([u8; 32]); [INFO] [stdout] | -- `Id` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Item` and up 2 bodies [INFO] [stdout] 14 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 15 | pub struct Item { [INFO] [stdout] | ---- `Item` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Item` and up 2 bodies [INFO] [stdout] 14 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 15 | pub struct Item { [INFO] [stdout] | ---- `Item` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_TypePosition` and up 2 bodies [INFO] [stdout] 21 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 22 | pub enum TypePosition { [INFO] [stdout] | ------------ `TypePosition` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_TypePosition` and up 2 bodies [INFO] [stdout] 21 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 22 | pub enum TypePosition { [INFO] [stdout] | ------------ `TypePosition` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Generics` and up 2 bodies [INFO] [stdout] 28 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 29 | pub struct Generics { [INFO] [stdout] | -------- `Generics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Generics` and up 2 bodies [INFO] [stdout] 28 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 29 | pub struct Generics { [INFO] [stdout] | -------- `Generics` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Binding` and up 2 bodies [INFO] [stdout] 35 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 36 | pub struct Binding { [INFO] [stdout] | ------- `Binding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Binding` and up 2 bodies [INFO] [stdout] 35 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 36 | pub struct Binding { [INFO] [stdout] | ------- `Binding` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Product` and up 2 bodies [INFO] [stdout] 42 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 43 | pub struct Product { [INFO] [stdout] | ------- `Product` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Product` and up 2 bodies [INFO] [stdout] 42 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 43 | pub struct Product { [INFO] [stdout] | ------- `Product` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:47:1 [INFO] [stdout] | [INFO] [stdout] 47 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Variant` and up 2 bodies [INFO] [stdout] 48 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 49 | pub struct Variant { [INFO] [stdout] | ------- `Variant` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:47:1 [INFO] [stdout] | [INFO] [stdout] 47 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Variant` and up 2 bodies [INFO] [stdout] 48 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 49 | pub struct Variant { [INFO] [stdout] | ------- `Variant` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Receiver` and up 2 bodies [INFO] [stdout] 55 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 56 | pub enum Receiver { [INFO] [stdout] | -------- `Receiver` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Receiver` and up 2 bodies [INFO] [stdout] 55 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 56 | pub enum Receiver { [INFO] [stdout] | -------- `Receiver` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Method` and up 2 bodies [INFO] [stdout] 63 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 64 | pub struct Method { [INFO] [stdout] | ------ `Method` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Method` and up 2 bodies [INFO] [stdout] 63 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 64 | pub struct Method { [INFO] [stdout] | ------ `Method` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Capture` and up 2 bodies [INFO] [stdout] 71 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 72 | pub enum Capture { [INFO] [stdout] | ------- `Capture` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:70:1 [INFO] [stdout] | [INFO] [stdout] 70 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Capture` and up 2 bodies [INFO] [stdout] 71 | #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 72 | pub enum Capture { [INFO] [stdout] | ------- `Capture` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Coalesce` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Coalesce_C_FOR_Type` and up 2 bodies [INFO] [stdout] 79 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 80 | pub enum Type { [INFO] [stdout] | ---- `Type` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | #[protocol] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Unravel` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_protocol_Unravel_C_FOR_Type` and up 2 bodies [INFO] [stdout] 79 | #[derive(Debug, Clone, Eq, Hash, PartialEq, Deserialize, Serialize)] [INFO] [stdout] 80 | pub enum Type { [INFO] [stdout] | ---- `Type` is not local [INFO] [stdout] | [INFO] [stdout] = note: the attribute macro `protocol` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the attribute macro `protocol` may come from an old version of the `derive` crate, try updating your dependency with `cargo update -p derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the attribute macro `protocol` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 11s [INFO] running `Command { std: "docker" "inspect" "e3cad1de52521128ee66cdd5ce9e4e40b2cd1fb49cb72af776133f97a07ef89d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e3cad1de52521128ee66cdd5ce9e4e40b2cd1fb49cb72af776133f97a07ef89d", kill_on_drop: false }` [INFO] [stdout] e3cad1de52521128ee66cdd5ce9e4e40b2cd1fb49cb72af776133f97a07ef89d