[INFO] fetching crate partial-enum 0.0.4...
[INFO] testing partial-enum-0.0.4 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate partial-enum 0.0.4 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate partial-enum 0.0.4 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate partial-enum 0.0.4
[INFO] finished tweaking crates.io crate partial-enum 0.0.4
[INFO] tweaked toml for crates.io crate partial-enum 0.0.4 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 5 packages to latest compatible versions
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.66)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4cf20075692798579d6ef708e2d2e49699c08e4727bc1683be23375d018f99ed
[INFO] running `Command { std: "docker" "start" "-a" "4cf20075692798579d6ef708e2d2e49699c08e4727bc1683be23375d018f99ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4cf20075692798579d6ef708e2d2e49699c08e4727bc1683be23375d018f99ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4cf20075692798579d6ef708e2d2e49699c08e4727bc1683be23375d018f99ed", kill_on_drop: false }`
[INFO] [stdout] 4cf20075692798579d6ef708e2d2e49699c08e4727bc1683be23375d018f99ed
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7c0689ae02cc1d8cb7762ae9080749deff5fe0ca587c10cb64c0a0681420448f
[INFO] running `Command { std: "docker" "start" "-a" "7c0689ae02cc1d8cb7762ae9080749deff5fe0ca587c10cb64c0a0681420448f", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.83
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling partial-enum v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.00s
[INFO] running `Command { std: "docker" "inspect" "7c0689ae02cc1d8cb7762ae9080749deff5fe0ca587c10cb64c0a0681420448f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c0689ae02cc1d8cb7762ae9080749deff5fe0ca587c10cb64c0a0681420448f", kill_on_drop: false }`
[INFO] [stdout] 7c0689ae02cc1d8cb7762ae9080749deff5fe0ca587c10cb64c0a0681420448f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d520f888de55690f2a8405ce9294fc0d2c5b671b08ad8693e5aaca7e5ce1e0f
[INFO] running `Command { std: "docker" "start" "-a" "2d520f888de55690f2a8405ce9294fc0d2c5b671b08ad8693e5aaca7e5ce1e0f", kill_on_drop: false }`
[INFO] [stderr]    Compiling partial-enum v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] running `Command { std: "docker" "inspect" "2d520f888de55690f2a8405ce9294fc0d2c5b671b08ad8693e5aaca7e5ce1e0f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d520f888de55690f2a8405ce9294fc0d2c5b671b08ad8693e5aaca7e5ce1e0f", kill_on_drop: false }`
[INFO] [stdout] 2d520f888de55690f2a8405ce9294fc0d2c5b671b08ad8693e5aaca7e5ce1e0f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f9f52701e375fcad90832f6eb127e5e3b8222024b4380eca4e5647c8081b5b7b
[INFO] running `Command { std: "docker" "start" "-a" "f9f52701e375fcad90832f6eb127e5e3b8222024b4380eca4e5647c8081b5b7b", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/partial_enum-77857f3469408957)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test permutation::tests::test_permutations ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests partial_enum
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/lib.rs - derive_error (line 220) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 91) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 136) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 16) ... ok
[INFO] [stdout] test src/lib.rs - (line 49) ... ok
[INFO] [stdout] test src/lib.rs - derive_error (line 235) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - derive_error (line 220) stdout ----
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:226:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `Foo`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:228:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Foo(Foo),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:226:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `Bar`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:229:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Bar(Bar),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 91) stdout ----
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:110:32
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn connect() -> Result<Socket, E<ConnectError, !, !>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:110:32
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn connect() -> Result<Socket, E<ConnectError, !, !>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:114:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:114:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:118:44
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:118:44
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:122:55
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:101:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ConnectError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:101:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ReadError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:101:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `DecodeError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:111:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Ok(Socket)
[INFO] [stdout]    |     ^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:111:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Ok(Socket)
[INFO] [stdout]    |     ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:115:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Ok(Bytes)
[INFO] [stdout]    |     ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:115:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Ok(Bytes)
[INFO] [stdout]    |     ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:29
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:29
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:123:29
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ----------^ the trait `From<partial::Error<!, ReadError, !>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, ReadError, !>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:124:34
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ---------------^ the trait `From<partial::Error<!, !, DecodeError>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, !, DecodeError>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:125:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Ok(message)
[INFO] [stdout]    |     ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 35 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 136) stdout ----
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:32
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:32
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:45
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:45
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:44
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:44
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:157:55
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:147:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ConnectError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:147:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ReadError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:147:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `DecodeError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                                         ^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                                         ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:67
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                                                   ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:67
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                                                   ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:158:29
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ----------^ the trait `From<partial::Error<!, ReadError, !>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, ReadError, !>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:34
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:34
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:159:34
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ---------------^ the trait `From<partial::Error<!, !, DecodeError>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, !, DecodeError>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:160:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Ok(message)
[INFO] [stdout]    |     ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:31
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                               ^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:31
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                               ^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `example::Error`
[INFO] [stdout]   --> src/lib.rs:163:31
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn read_one_message() -> Result<Message, Error> {
[INFO] [stdout]    |                          ---------------------- expected `example::Error` because of this
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ---------^ the trait `From<partial::Error<ConnectError, !, !>>` is not implemented for `example::Error`, which is required by `Result<Message, example::Error>: FromResidual<Result<Infallible, partial::Error<ConnectError, !, !>>>`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this can't be annotated with `?` because it has type `Result<_, partial::Error<ConnectError, !, !>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, DecodeError>>>
[INFO] [stdout]    = note: required for `Result<Message, example::Error>` to implement `FromResidual<Result<Infallible, partial::Error<ConnectError, !, !>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:166:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         Err(E::Read(_)) => {
[INFO] [stdout]    |             ^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error::Read`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error::Read`
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ---- required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:170:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |         Err(E::Decode(err)) => Err(Error::Decode(err)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error::Decode`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error::Decode`
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ------ required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:164:11
[INFO] [stdout]    |
[INFO] [stdout] 31 |     match next_message(&mut socket) {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `example::Error: From<partial::Error<!, ReadError, DecodeError>>` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `From<partial::Error<!, ReadError, DecodeError>>` is not implemented for `example::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, DecodeError>>>
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `example::Error: From<partial::Error<!, ReadError, DecodeError>>` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |                                               ^^^^^ the trait `From<partial::Error<!, ReadError, DecodeError>>` is not implemented for `example::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, DecodeError>>>
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |                                               ^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 50 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 136)
[INFO] [stdout]     src/lib.rs - (line 91)
[INFO] [stdout]     src/lib.rs - derive_error (line 220)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 3 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f9f52701e375fcad90832f6eb127e5e3b8222024b4380eca4e5647c8081b5b7b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f9f52701e375fcad90832f6eb127e5e3b8222024b4380eca4e5647c8081b5b7b", kill_on_drop: false }`
[INFO] [stdout] f9f52701e375fcad90832f6eb127e5e3b8222024b4380eca4e5647c8081b5b7b
[INFO] testing partial-enum-0.0.4 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate partial-enum 0.0.4 into /workspace/builds/worker-1-tc2/source
[INFO] validating manifest of crates.io crate partial-enum 0.0.4 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate partial-enum 0.0.4
[INFO] finished tweaking crates.io crate partial-enum 0.0.4
[INFO] tweaked toml for crates.io crate partial-enum 0.0.4 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 5 packages to latest compatible versions
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.66)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bc9d0daaf35d12fbd15debb55bc1da2f1c5d687a073c302dc77b155ce2f274d3
[INFO] running `Command { std: "docker" "start" "-a" "bc9d0daaf35d12fbd15debb55bc1da2f1c5d687a073c302dc77b155ce2f274d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bc9d0daaf35d12fbd15debb55bc1da2f1c5d687a073c302dc77b155ce2f274d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc9d0daaf35d12fbd15debb55bc1da2f1c5d687a073c302dc77b155ce2f274d3", kill_on_drop: false }`
[INFO] [stdout] bc9d0daaf35d12fbd15debb55bc1da2f1c5d687a073c302dc77b155ce2f274d3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c8850cb07f3f87d69a0918e5b39056fd20e9d628026e1508b001b094a53225cb
[INFO] running `Command { std: "docker" "start" "-a" "c8850cb07f3f87d69a0918e5b39056fd20e9d628026e1508b001b094a53225cb", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.83
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling partial-enum v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.28s
[INFO] running `Command { std: "docker" "inspect" "c8850cb07f3f87d69a0918e5b39056fd20e9d628026e1508b001b094a53225cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c8850cb07f3f87d69a0918e5b39056fd20e9d628026e1508b001b094a53225cb", kill_on_drop: false }`
[INFO] [stdout] c8850cb07f3f87d69a0918e5b39056fd20e9d628026e1508b001b094a53225cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ad2fd25afe1b504d2d1ae8a9cd73fa31f1854cedf2dd2d470036d22703676d1d
[INFO] running `Command { std: "docker" "start" "-a" "ad2fd25afe1b504d2d1ae8a9cd73fa31f1854cedf2dd2d470036d22703676d1d", kill_on_drop: false }`
[INFO] [stderr]    Compiling partial-enum v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.49s
[INFO] running `Command { std: "docker" "inspect" "ad2fd25afe1b504d2d1ae8a9cd73fa31f1854cedf2dd2d470036d22703676d1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ad2fd25afe1b504d2d1ae8a9cd73fa31f1854cedf2dd2d470036d22703676d1d", kill_on_drop: false }`
[INFO] [stdout] ad2fd25afe1b504d2d1ae8a9cd73fa31f1854cedf2dd2d470036d22703676d1d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 82ae9b6cb08542cee41abb2db497f4fe77466e43a738462e4fe5140d04bdc00b
[INFO] running `Command { std: "docker" "start" "-a" "82ae9b6cb08542cee41abb2db497f4fe77466e43a738462e4fe5140d04bdc00b", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/partial_enum-77857f3469408957)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test permutation::tests::test_permutations ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests partial_enum
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/lib.rs - derive_error (line 220) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 91) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 136) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 16) ... ok
[INFO] [stdout] test src/lib.rs - derive_error (line 235) ... ok
[INFO] [stdout] test src/lib.rs - (line 49) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - derive_error (line 220) stdout ----
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:226:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `Foo`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:228:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Foo(Foo),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:226:10
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `Bar`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:229:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Bar(Bar),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 91) stdout ----
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:110:32
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn connect() -> Result<Socket, E<ConnectError, !, !>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:110:32
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn connect() -> Result<Socket, E<ConnectError, !, !>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:114:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:114:45
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:118:44
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:118:44
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:122:55
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:101:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ConnectError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:101:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ReadError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:101:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `DecodeError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:111:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Ok(Socket)
[INFO] [stdout]    |     ^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:111:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Ok(Socket)
[INFO] [stdout]    |     ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:115:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Ok(Bytes)
[INFO] [stdout]    |     ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:115:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Ok(Bytes)
[INFO] [stdout]    |     ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:119:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Err(DecodeError)?
[INFO] [stdout]    |     ^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:19
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:29
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:123:29
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:105:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:123:29
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ----------^ the trait `From<partial::Error<!, ReadError, !>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, ReadError, !>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:124:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:104:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout] 16 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:124:34
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 35 |     let payload = read(sock)?;
[INFO] [stdout] 36 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ---------------^ the trait `From<partial::Error<!, !, DecodeError>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, !, DecodeError>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:125:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Ok(message)
[INFO] [stdout]    |     ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:103:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 15 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 35 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 136) stdout ----
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:32
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:32
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:45
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:45
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:44
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:44
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:157:55
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:147:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ConnectError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:147:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `ReadError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:147:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(partial_enum::Enum)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          expected `DecodeError`, found `()`
[INFO] [stdout]    |          arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    = note: this error originates in the derive macro `partial_enum::Enum` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                                         ^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:154:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn connect() -> Result<Socket, E<ConnectError, !, !>> { Ok(Socket) }
[INFO] [stdout]    |                                                         ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:67
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                                                   ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:155:67
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn read(sock: &mut Socket) -> Result<Bytes, E<!, ReadError, !>> { Ok(Bytes) }
[INFO] [stdout]    |                                                                   ^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:156:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn decode(bytes: Bytes) -> Result<Message, E<!, !, DecodeError>> { Err(DecodeError)? }
[INFO] [stdout]    |                                                                    ^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:158:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                             ^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:158:29
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout]    |                   ----------^ the trait `From<partial::Error<!, ReadError, !>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, ReadError, !>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, ReadError, !>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:34
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:159:34
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                                  ^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `partial::Error<!, ReadError, DecodeError>`
[INFO] [stdout]   --> src/lib.rs:159:34
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn next_message(sock: &mut Socket) -> Result<Message, E<!, ReadError, DecodeError>> {
[INFO] [stdout]    |                                       --------------------------------------------- expected `partial::Error<!, ReadError, DecodeError>` because of this
[INFO] [stdout] 25 |     let payload = read(sock)?;
[INFO] [stdout] 26 |     let message = decode(payload)?;
[INFO] [stdout]    |                   ---------------^ the trait `From<partial::Error<!, !, DecodeError>>` is not implemented for `partial::Error<!, ReadError, DecodeError>`, which is required by `Result<Message, partial::Error<!, ReadError, DecodeError>>: FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this can't be annotated with `?` because it has type `Result<_, partial::Error<!, !, DecodeError>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <partial::Error<Connect, Read, DecodeError> as From<DecodeError>>
[INFO] [stdout]              <partial::Error<Connect, ReadError, Decode> as From<ReadError>>
[INFO] [stdout]              <partial::Error<ConnectError, Read, Decode> as From<ConnectError>>
[INFO] [stdout]    = note: required for `Result<Message, partial::Error<!, ReadError, DecodeError>>` to implement `FromResidual<Result<Infallible, partial::Error<!, !, DecodeError>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:160:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Ok(message)
[INFO] [stdout]    |     ^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:22
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ^^^^^^^^^^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ReadBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:31
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                               ^ the trait `ReadBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ReadBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ReadError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:150:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: DecodeBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:163:31
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                               ^ the trait `DecodeBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `DecodeBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              DecodeError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:151:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `example::Error`
[INFO] [stdout]   --> src/lib.rs:163:31
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn read_one_message() -> Result<Message, Error> {
[INFO] [stdout]    |                          ---------------------- expected `example::Error` because of this
[INFO] [stdout] 30 |     let mut socket = connect()?;
[INFO] [stdout]    |                      ---------^ the trait `From<partial::Error<ConnectError, !, !>>` is not implemented for `example::Error`, which is required by `Result<Message, example::Error>: FromResidual<Result<Infallible, partial::Error<ConnectError, !, !>>>`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this can't be annotated with `?` because it has type `Result<_, partial::Error<ConnectError, !, !>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, DecodeError>>>
[INFO] [stdout]    = note: required for `Result<Message, example::Error>` to implement `FromResidual<Result<Infallible, partial::Error<ConnectError, !, !>>>`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:166:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         Err(E::Read(_)) => {
[INFO] [stdout]    |             ^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error::Read`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error::Read`
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout]    |     ---- required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:170:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |         Err(E::Decode(err)) => Err(Error::Decode(err)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error::Decode`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error::Decode`
[INFO] [stdout] 17 |     Read(ReadError),
[INFO] [stdout] 18 |     Decode(DecodeError),
[INFO] [stdout]    |     ------ required by a bound in this tuple variant
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:164:11
[INFO] [stdout]    |
[INFO] [stdout] 31 |     match next_message(&mut socket) {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `example::Error: From<partial::Error<!, ReadError, DecodeError>>` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `From<partial::Error<!, ReadError, DecodeError>>` is not implemented for `example::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, DecodeError>>>
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `example::Error: From<partial::Error<!, ReadError, DecodeError>>` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |                                               ^^^^^ the trait `From<partial::Error<!, ReadError, DecodeError>>` is not implemented for `example::Error`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<(), ReadError, DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, (), DecodeError>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, ()>>>
[INFO] [stdout]              <example::Error as From<partial::Error<ConnectError, ReadError, DecodeError>>>
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `!: ConnectBound` is not satisfied
[INFO] [stdout]   --> src/lib.rs:168:47
[INFO] [stdout]    |
[INFO] [stdout] 35 |             next_message(&mut socket).map_err(Error::from)
[INFO] [stdout]    |                                               ^^^^^^^^^^^ the trait `ConnectBound` is not implemented for `!`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `ConnectBound`:
[INFO] [stdout]              ()
[INFO] [stdout]              ConnectError
[INFO] [stdout] note: required by a bound in `partial::Error`
[INFO] [stdout]   --> src/lib.rs:149:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum Error {
[INFO] [stdout]    |      ----- required by a bound in this enum
[INFO] [stdout] 16 |     Connect(ConnectError),
[INFO] [stdout]    |     ^^^^^^^ required by this bound in `Error`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 50 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 136)
[INFO] [stdout]     src/lib.rs - (line 91)
[INFO] [stdout]     src/lib.rs - derive_error (line 220)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 3 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "82ae9b6cb08542cee41abb2db497f4fe77466e43a738462e4fe5140d04bdc00b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "82ae9b6cb08542cee41abb2db497f4fe77466e43a738462e4fe5140d04bdc00b", kill_on_drop: false }`
[INFO] [stdout] 82ae9b6cb08542cee41abb2db497f4fe77466e43a738462e4fe5140d04bdc00b
