[INFO] fetching crate jam-codec 0.1.1...
[INFO] testing jam-codec-0.1.1 against beta-2025-09-21 for beta-1.91-3
[INFO] extracting crate jam-codec 0.1.1 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate jam-codec 0.1.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate jam-codec 0.1.1
[INFO] tweaked toml for crates.io crate jam-codec 0.1.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate jam-codec 0.1.1 on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate jam-codec 0.1.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d1bee61d92738cd899f5684bbf0b6403aa680636714ff0a7f677e9ffe3b9fe7a
[INFO] running `Command { std: "docker" "start" "-a" "d1bee61d92738cd899f5684bbf0b6403aa680636714ff0a7f677e9ffe3b9fe7a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d1bee61d92738cd899f5684bbf0b6403aa680636714ff0a7f677e9ffe3b9fe7a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1bee61d92738cd899f5684bbf0b6403aa680636714ff0a7f677e9ffe3b9fe7a", kill_on_drop: false }`
[INFO] [stdout] d1bee61d92738cd899f5684bbf0b6403aa680636714ff0a7f677e9ffe3b9fe7a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e1be6ad89094bcb06b9291b8d81d672a1884914081637c124405c014bbf09c0d
[INFO] running `Command { std: "docker" "start" "-a" "e1be6ad89094bcb06b9291b8d81d672a1884914081637c124405c014bbf09c0d", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.97
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling byte-slice-cast v1.2.3
[INFO] [stderr]    Compiling jam-codec v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.105
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]    Compiling const_format v0.2.34
[INFO] [stderr]    Compiling impl-trait-for-tuples v0.2.3
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.92s
[INFO] running `Command { std: "docker" "inspect" "e1be6ad89094bcb06b9291b8d81d672a1884914081637c124405c014bbf09c0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e1be6ad89094bcb06b9291b8d81d672a1884914081637c124405c014bbf09c0d", kill_on_drop: false }`
[INFO] [stdout] e1be6ad89094bcb06b9291b8d81d672a1884914081637c124405c014bbf09c0d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0d5d4f802b7b7709ab4bfd5f39e3159d0b97c0d4cfb019efb5a752f8b8f86683
[INFO] running `Command { std: "docker" "start" "-a" "0d5d4f802b7b7709ab4bfd5f39e3159d0b97c0d4cfb019efb5a752f8b8f86683", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling rustix v0.37.25
[INFO] [stderr]    Compiling serde_json v1.0.111
[INFO] [stderr]    Compiling itoa v1.0.8
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling regex-syntax v0.6.26
[INFO] [stderr]    Compiling linux-raw-sys v0.3.6
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling crossbeam-deque v0.8.1
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling winnow v0.7.11
[INFO] [stderr]    Compiling regex v1.5.6
[INFO] [stderr]    Compiling target-triple v0.1.3
[INFO] [stderr]    Compiling ciborium-io v0.2.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.0
[INFO] [stderr]    Compiling clap_builder v4.5.27
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling getrandom v0.2.3
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling rand_core v0.6.3
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling toml_parser v1.0.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling toml_writer v1.0.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling env_logger v0.8.4
[INFO] [stderr]    Compiling clap v4.5.28
[INFO] [stderr]    Compiling rand v0.8.4
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling criterion-plot v0.6.0
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling rand v0.9.1
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling glob v0.3.0
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling bitflags v2.9.1
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling termcolor v1.1.2
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling quickcheck v1.0.3
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling proptest v1.7.0
[INFO] [stderr]    Compiling toml_datetime v0.7.0
[INFO] [stderr]    Compiling serde_spanned v1.0.0
[INFO] [stderr]    Compiling ciborium v0.2.0
[INFO] [stderr]    Compiling jam-codec v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling toml v0.9.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling trybuild v1.0.110
[INFO] [stderr]    Compiling criterion v0.7.0
[INFO] [stdout] error[E0432]: unresolved import `jam_codec_derive`
[INFO] [stdout]  --> tests/test_vectors.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use jam_codec_derive::{Decode as DecodeDerive, Encode as EncodeDerive};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `jam_codec_derive`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `jam_codec_derive`, use `cargo add jam_codec_derive` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `jam_codec_derive`
[INFO] [stdout]  --> tests/size_hint.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use jam_codec_derive::Encode as DeriveEncode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `jam_codec_derive`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `jam_codec_derive`, use `cargo add jam_codec_derive` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `jam_codec_derive`
[INFO] [stdout]  --> tests/single_field_struct_encoding.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use jam_codec_derive::{
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `jam_codec_derive`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `jam_codec_derive`, use `cargo add jam_codec_derive` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `jam_codec_derive`
[INFO] [stdout]   --> tests/clippy.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use jam_codec_derive::{Decode, DecodeWithMemTracking, Encode};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `jam_codec_derive`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `jam_codec_derive`, use `cargo add jam_codec_derive` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `jam_codec_derive`
[INFO] [stdout]   --> tests/chain-error.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use jam_codec_derive::Decode as DeriveDecode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `jam_codec_derive`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `jam_codec_derive`, use `cargo add jam_codec_derive` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `jam-codec` (test "clippy") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 |     #[codec(skip)]
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 |     #[codec(skip)]
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:35:4
[INFO] [stdout]    |
[INFO] [stdout] 35 |     #[codec(compact)]
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 |     #[codec(encoded_as = "<T as HasCompact>::Type")]
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:90:16
[INFO] [stdout]    |
[INFO] [stdout] 90 | struct USkip(#[codec(skip)] u32, u32, #[codec(skip)] u32);
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:90:41
[INFO] [stdout]    |
[INFO] [stdout] 90 | struct USkip(#[codec(skip)] u32, u32, #[codec(skip)] u32);
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 | struct Uc(#[codec(compact)] u32);
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:96:15
[INFO] [stdout]    |
[INFO] [stdout] 96 | struct Ucas(#[codec(compact)] U);
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/single_field_struct_encoding.rs:99:19
[INFO] [stdout]    |
[INFO] [stdout] 99 | struct USkipcas(#[codec(compact)] USkip);
[INFO] [stdout]    |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:102:19
[INFO] [stdout]     |
[INFO] [stdout] 102 | struct SSkipcas(#[codec(compact)] SSkip);
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:105:28
[INFO] [stdout]     |
[INFO] [stdout] 105 | struct Uh<T: HasCompact>(#[codec(encoded_as = "<T as HasCompact>::Type")] T)
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/size_hint.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |         #[codec(skip)]
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Wrapper<StructNamed>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/chain-error.rs:44:27
[INFO] [stdout]     |
[INFO] [stdout]  19 | struct Wrapper<T>(T);
[INFO] [stdout]     | ----------------- function or associated item `decode` not found for this struct because it doesn't satisfy `<_ as WrapperTypeDecode>::Wrapped = _`, `Wrapper<StructNamed>: Decode` or `Wrapper<StructNamed>: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout]  44 |         Wrapper::<StructNamed>::decode(&mut &encoded[..]).unwrap_err().to_string(),
[INFO] [stdout]     |                                 ^^^^^^ function or associated item cannot be called on `Wrapper<StructNamed>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Wrapper<StructNamed> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Wrapper<StructNamed>: Decode`
[INFO] [stdout]             `Wrapper<StructNamed>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Wrapper<StructNamed>: Decode`
[INFO] [stdout]             `<&Wrapper<StructNamed> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Wrapper<StructNamed>: Decode`
[INFO] [stdout]             `&Wrapper<StructNamed>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Wrapper<StructNamed>: Decode`
[INFO] [stdout]             `<&mut Wrapper<StructNamed> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Wrapper<StructNamed>: Decode`
[INFO] [stdout]             `&mut Wrapper<StructNamed>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Wrapper<StructNamed>: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/size_hint.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 |     struct Tuple(String, Vec<i32>, #[codec(skip)] u32);
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Wrapper<StructUnnamed>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/chain-error.rs:58:29
[INFO] [stdout]     |
[INFO] [stdout]  19 | struct Wrapper<T>(T);
[INFO] [stdout]     | ----------------- function or associated item `decode` not found for this struct because it doesn't satisfy `<_ as WrapperTypeDecode>::Wrapped = _`, `Wrapper<StructUnnamed>: Decode` or `Wrapper<StructUnnamed>: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout]  58 |         Wrapper::<StructUnnamed>::decode(&mut &encoded[..]).unwrap_err().to_string(),
[INFO] [stdout]     |                                   ^^^^^^ function or associated item cannot be called on `Wrapper<StructUnnamed>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Wrapper<StructUnnamed> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Wrapper<StructUnnamed>: Decode`
[INFO] [stdout]             `Wrapper<StructUnnamed>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Wrapper<StructUnnamed>: Decode`
[INFO] [stdout]             `<&Wrapper<StructUnnamed> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Wrapper<StructUnnamed>: Decode`
[INFO] [stdout]             `&Wrapper<StructUnnamed>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Wrapper<StructUnnamed>: Decode`
[INFO] [stdout]             `<&mut Wrapper<StructUnnamed> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Wrapper<StructUnnamed>: Decode`
[INFO] [stdout]             `&mut Wrapper<StructUnnamed>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Wrapper<StructUnnamed>: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the variant or associated item `decode` exists for enum `E`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/chain-error.rs:68:16
[INFO] [stdout]     |
[INFO] [stdout]  30 | enum E {
[INFO] [stdout]     | ------ variant or associated item `decode` not found for this enum because it doesn't satisfy `<E as WrapperTypeDecode>::Wrapped = _`, `E: Decode` or `E: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout]  68 |     assert_eq!(E::decode(&mut &encoded[..]).unwrap_err().to_string(), String::from(err),);
[INFO] [stdout]     |                   ^^^^^^ variant or associated item cannot be called on `E` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `E: Decode`
[INFO] [stdout]             `E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `E: Decode`
[INFO] [stdout]             `<&E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&E: Decode`
[INFO] [stdout]             `&E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&E: Decode`
[INFO] [stdout]             `<&mut E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut E: Decode`
[INFO] [stdout]             `&mut E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut E: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the variant or associated item `decode` exists for enum `E`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/chain-error.rs:78:16
[INFO] [stdout]     |
[INFO] [stdout]  30 | enum E {
[INFO] [stdout]     | ------ variant or associated item `decode` not found for this enum because it doesn't satisfy `<E as WrapperTypeDecode>::Wrapped = _`, `E: Decode` or `E: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout]  78 |     assert_eq!(E::decode(&mut &encoded[..]).unwrap_err().to_string(), String::from(err),);
[INFO] [stdout]     |                   ^^^^^^ variant or associated item cannot be called on `E` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `E: Decode`
[INFO] [stdout]             `E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `E: Decode`
[INFO] [stdout]             `<&E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&E: Decode`
[INFO] [stdout]             `&E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&E: Decode`
[INFO] [stdout]             `<&mut E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut E: Decode`
[INFO] [stdout]             `&mut E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut E: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the variant or associated item `decode` exists for enum `E`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/chain-error.rs:88:16
[INFO] [stdout]     |
[INFO] [stdout]  30 | enum E {
[INFO] [stdout]     | ------ variant or associated item `decode` not found for this enum because it doesn't satisfy `<E as WrapperTypeDecode>::Wrapped = _`, `E: Decode` or `E: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout]  88 |     assert_eq!(E::decode(&mut &encoded[..]).unwrap_err().to_string(), String::from(err),);
[INFO] [stdout]     |                   ^^^^^^ variant or associated item cannot be called on `E` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `E: Decode`
[INFO] [stdout]             `E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `E: Decode`
[INFO] [stdout]             `<&E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&E: Decode`
[INFO] [stdout]             `&E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&E: Decode`
[INFO] [stdout]             `<&mut E as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut E: Decode`
[INFO] [stdout]             `&mut E: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut E: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `codec` in this scope
[INFO] [stdout]   --> tests/size_hint.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |         #[codec(index = 15)]
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestEnum<u8>: Encode` is not satisfied
[INFO] [stdout]    --> tests/test_vectors.rs:172:12
[INFO] [stdout]     |
[INFO] [stdout] 172 |     t.process(TestEnum::<u8>::Dummy);
[INFO] [stdout]     |       ------- ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |       |
[INFO] [stdout]     |       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `WrapperTypeEncode` is not implemented for `TestEnum<u8>`
[INFO] [stdout]    --> tests/test_vectors.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | enum TestEnum<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `WrapperTypeEncode`:
[INFO] [stdout]               &T
[INFO] [stdout]               &mut T
[INFO] [stdout]               Arc<T>
[INFO] [stdout]               Box<T>
[INFO] [stdout]               Cow<'_, T>
[INFO] [stdout]               Rc<T>
[INFO] [stdout]               String
[INFO] [stdout]               Vec<T>
[INFO] [stdout]               jam_codec::Ref<'_, T, U>
[INFO] [stdout]     = note: required for `TestEnum<u8>` to implement `Encode`
[INFO] [stdout] note: required by a bound in `TestHarness::process`
[INFO] [stdout]    --> tests/test_vectors.rs:78:16
[INFO] [stdout]     |
[INFO] [stdout]  78 |     fn process<T: Encode + Decode + std::fmt::Debug + PartialEq>(&mut self, v: T) {
[INFO] [stdout]     |                   ^^^^^^ required by this bound in `TestHarness::process`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestEnum<u8>: Decode` is not satisfied
[INFO] [stdout]    --> tests/test_vectors.rs:172:12
[INFO] [stdout]     |
[INFO] [stdout] 172 |     t.process(TestEnum::<u8>::Dummy);
[INFO] [stdout]     |       ------- ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |       |
[INFO] [stdout]     |       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `WrapperTypeDecode` is not implemented for `TestEnum<u8>`
[INFO] [stdout]    --> tests/test_vectors.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | enum TestEnum<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `WrapperTypeDecode`:
[INFO] [stdout]               Arc<T>
[INFO] [stdout]               Box<T>
[INFO] [stdout]               Rc<T>
[INFO] [stdout]     = note: required for `TestEnum<u8>` to implement `Decode`
[INFO] [stdout] note: required by a bound in `TestHarness::process`
[INFO] [stdout]    --> tests/test_vectors.rs:78:25
[INFO] [stdout]     |
[INFO] [stdout]  78 |     fn process<T: Encode + Decode + std::fmt::Debug + PartialEq>(&mut self, v: T) {
[INFO] [stdout]     |                            ^^^^^^ required by this bound in `TestHarness::process`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestEnum<u8>: Encode` is not satisfied
[INFO] [stdout]    --> tests/test_vectors.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 173 |     t.process(TestEnum::Foo(42_u8));
[INFO] [stdout]     |       ------- ^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |       |
[INFO] [stdout]     |       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `WrapperTypeEncode` is not implemented for `TestEnum<u8>`
[INFO] [stdout]    --> tests/test_vectors.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | enum TestEnum<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `WrapperTypeEncode`:
[INFO] [stdout]               &T
[INFO] [stdout]               &mut T
[INFO] [stdout]               Arc<T>
[INFO] [stdout]               Box<T>
[INFO] [stdout]               Cow<'_, T>
[INFO] [stdout]               Rc<T>
[INFO] [stdout]               String
[INFO] [stdout]               Vec<T>
[INFO] [stdout]               jam_codec::Ref<'_, T, U>
[INFO] [stdout]     = note: required for `TestEnum<u8>` to implement `Encode`
[INFO] [stdout] note: required by a bound in `TestHarness::process`
[INFO] [stdout]    --> tests/test_vectors.rs:78:16
[INFO] [stdout]     |
[INFO] [stdout]  78 |     fn process<T: Encode + Decode + std::fmt::Debug + PartialEq>(&mut self, v: T) {
[INFO] [stdout]     |                   ^^^^^^ required by this bound in `TestHarness::process`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestEnum<u8>: Decode` is not satisfied
[INFO] [stdout]    --> tests/test_vectors.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 173 |     t.process(TestEnum::Foo(42_u8));
[INFO] [stdout]     |       ------- ^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |       |
[INFO] [stdout]     |       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `WrapperTypeDecode` is not implemented for `TestEnum<u8>`
[INFO] [stdout]    --> tests/test_vectors.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | enum TestEnum<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `WrapperTypeDecode`:
[INFO] [stdout]               Arc<T>
[INFO] [stdout]               Box<T>
[INFO] [stdout]               Rc<T>
[INFO] [stdout]     = note: required for `TestEnum<u8>` to implement `Decode`
[INFO] [stdout] note: required by a bound in `TestHarness::process`
[INFO] [stdout]    --> tests/test_vectors.rs:78:25
[INFO] [stdout]     |
[INFO] [stdout]  78 |     fn process<T: Encode + Decode + std::fmt::Debug + PartialEq>(&mut self, v: T) {
[INFO] [stdout]     |                            ^^^^^^ required by this bound in `TestHarness::process`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestEnum<u8>: Encode` is not satisfied
[INFO] [stdout]    --> tests/test_vectors.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 174 |     t.process(TestEnum::Bar([1_u8, 2, 3, 4, 5, 6, 7, 8]));
[INFO] [stdout]     |       ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |       |
[INFO] [stdout]     |       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `WrapperTypeEncode` is not implemented for `TestEnum<u8>`
[INFO] [stdout]    --> tests/test_vectors.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | enum TestEnum<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `WrapperTypeEncode`:
[INFO] [stdout]               &T
[INFO] [stdout]               &mut T
[INFO] [stdout]               Arc<T>
[INFO] [stdout]               Box<T>
[INFO] [stdout]               Cow<'_, T>
[INFO] [stdout]               Rc<T>
[INFO] [stdout]               String
[INFO] [stdout]               Vec<T>
[INFO] [stdout]               jam_codec::Ref<'_, T, U>
[INFO] [stdout]     = note: required for `TestEnum<u8>` to implement `Encode`
[INFO] [stdout] note: required by a bound in `TestHarness::process`
[INFO] [stdout]    --> tests/test_vectors.rs:78:16
[INFO] [stdout]     |
[INFO] [stdout]  78 |     fn process<T: Encode + Decode + std::fmt::Debug + PartialEq>(&mut self, v: T) {
[INFO] [stdout]     |                   ^^^^^^ required by this bound in `TestHarness::process`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestEnum<u8>: Decode` is not satisfied
[INFO] [stdout]    --> tests/test_vectors.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 174 |     t.process(TestEnum::Bar([1_u8, 2, 3, 4, 5, 6, 7, 8]));
[INFO] [stdout]     |       ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |       |
[INFO] [stdout]     |       required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `WrapperTypeDecode` is not implemented for `TestEnum<u8>`
[INFO] [stdout]    --> tests/test_vectors.rs:62:1
[INFO] [stdout]     |
[INFO] [stdout]  62 | enum TestEnum<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: the following other types implement trait `WrapperTypeDecode`:
[INFO] [stdout]               Arc<T>
[INFO] [stdout]               Box<T>
[INFO] [stdout]               Rc<T>
[INFO] [stdout]     = note: required for `TestEnum<u8>` to implement `Decode`
[INFO] [stdout] note: required by a bound in `TestHarness::process`
[INFO] [stdout]    --> tests/test_vectors.rs:78:25
[INFO] [stdout]     |
[INFO] [stdout]  78 |     fn process<T: Encode + Decode + std::fmt::Debug + PartialEq>(&mut self, v: T) {
[INFO] [stdout]     |                            ^^^^^^ required by this bound in `TestHarness::process`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `jam-codec` (test "chain-error") due to 6 previous errors
[INFO] [stderr] error: could not compile `jam-codec` (test "test_vectors") due to 7 previous errors
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for struct `Struct<String, Vec<i32>, u32>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:15:15
[INFO] [stdout]     |
[INFO] [stdout]   7 |     struct Struct<A, B, C> {
[INFO] [stdout]     |     ---------------------- method `size_hint` not found for this struct because it doesn't satisfy `<_ as __Deref>::Target = _`, `Struct<String, Vec<i32>, u32>: Encode` or `Struct<String, Vec<i32>, u32>: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  15 |     assert_eq!(v.size_hint(), 23);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `Struct<String, Vec<i32>, u32>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Struct<String, Vec<i32>, u32> as Deref>::Target = _`
[INFO] [stdout]             which is required by `Struct<String, Vec<i32>, u32>: Encode`
[INFO] [stdout]             `Struct<String, Vec<i32>, u32>: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Struct<String, Vec<i32>, u32>: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for struct `size_hint_for_tuple_struct::Tuple`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:24:15
[INFO] [stdout]     |
[INFO] [stdout]  21 |     struct Tuple(String, Vec<i32>, #[codec(skip)] u32);
[INFO] [stdout]     |     ------------ method `size_hint` not found for this struct because it doesn't satisfy `<_ as __Deref>::Target = _`, `_: WrapperTypeEncode` or `size_hint_for_tuple_struct::Tuple: Encode`
[INFO] [stdout] ...
[INFO] [stdout]  24 |     assert_eq!(v.size_hint(), 23);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `size_hint_for_tuple_struct::Tuple` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<size_hint_for_tuple_struct::Tuple as Deref>::Target = _`
[INFO] [stdout]             which is required by `size_hint_for_tuple_struct::Tuple: Encode`
[INFO] [stdout]             `size_hint_for_tuple_struct::Tuple: WrapperTypeEncode`
[INFO] [stdout]             which is required by `size_hint_for_tuple_struct::Tuple: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for struct `Unit`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:33:15
[INFO] [stdout]     |
[INFO] [stdout]  30 |     struct Unit;
[INFO] [stdout]     |     ----------- method `size_hint` not found for this struct because it doesn't satisfy `<Unit as Deref>::Target = _`, `Unit: Encode` or `Unit: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  33 |     assert_eq!(v.size_hint(), 0);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `Unit` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Unit as Deref>::Target = _`
[INFO] [stdout]             which is required by `Unit: Encode`
[INFO] [stdout]             `Unit: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Unit: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for enum `EnumType`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:50:15
[INFO] [stdout]     |
[INFO] [stdout]  39 |     enum EnumType {
[INFO] [stdout]     |     ------------- method `size_hint` not found for this enum because it doesn't satisfy `<EnumType as Deref>::Target = _`, `EnumType: Encode` or `EnumType: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  50 |     assert_eq!(v.size_hint(), 1);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `EnumType` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<EnumType as Deref>::Target = _`
[INFO] [stdout]             which is required by `EnumType: Encode`
[INFO] [stdout]             `EnumType: WrapperTypeEncode`
[INFO] [stdout]             which is required by `EnumType: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for enum `EnumType`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:53:15
[INFO] [stdout]     |
[INFO] [stdout]  39 |     enum EnumType {
[INFO] [stdout]     |     ------------- method `size_hint` not found for this enum because it doesn't satisfy `<EnumType as Deref>::Target = _`, `EnumType: Encode` or `EnumType: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  53 |     assert_eq!(v.size_hint(), 13);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `EnumType` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<EnumType as Deref>::Target = _`
[INFO] [stdout]             which is required by `EnumType: Encode`
[INFO] [stdout]             `EnumType: WrapperTypeEncode`
[INFO] [stdout]             which is required by `EnumType: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for enum `EnumType`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:56:15
[INFO] [stdout]     |
[INFO] [stdout]  39 |     enum EnumType {
[INFO] [stdout]     |     ------------- method `size_hint` not found for this enum because it doesn't satisfy `<EnumType as Deref>::Target = _`, `EnumType: Encode` or `EnumType: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  56 |     assert_eq!(v.size_hint(), 13);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `EnumType` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<EnumType as Deref>::Target = _`
[INFO] [stdout]             which is required by `EnumType: Encode`
[INFO] [stdout]             `EnumType: WrapperTypeEncode`
[INFO] [stdout]             which is required by `EnumType: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for enum `EnumWithDiscriminant`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:71:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |     enum EnumWithDiscriminant {
[INFO] [stdout]     |     ------------------------- method `size_hint` not found for this enum because it doesn't satisfy `<EnumWithDiscriminant as Deref>::Target = _`, `EnumWithDiscriminant: Encode` or `EnumWithDiscriminant: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  71 |     assert_eq!(v.size_hint(), discriminant);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `EnumWithDiscriminant` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<EnumWithDiscriminant as Deref>::Target = _`
[INFO] [stdout]             which is required by `EnumWithDiscriminant: Encode`
[INFO] [stdout]             `EnumWithDiscriminant: WrapperTypeEncode`
[INFO] [stdout]             which is required by `EnumWithDiscriminant: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `S`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:138:15
[INFO] [stdout]     |
[INFO] [stdout]   9 | struct S {
[INFO] [stdout]     | -------- method `encode` not found for this struct because it doesn't satisfy `<S as Deref>::Target = _`, `S: Encode` or `S: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 138 |     assert_eq!(s.encode(), s_encoded);
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `S` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<S as Deref>::Target = _`
[INFO] [stdout]             which is required by `S: Encode`
[INFO] [stdout]             `S: WrapperTypeEncode`
[INFO] [stdout]             which is required by `S: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for enum `EnumWithDiscriminant`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:74:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |     enum EnumWithDiscriminant {
[INFO] [stdout]     |     ------------------------- method `size_hint` not found for this enum because it doesn't satisfy `<EnumWithDiscriminant as Deref>::Target = _`, `EnumWithDiscriminant: Encode` or `EnumWithDiscriminant: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  74 |     assert_eq!(v.size_hint(), discriminant);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `EnumWithDiscriminant` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<EnumWithDiscriminant as Deref>::Target = _`
[INFO] [stdout]             which is required by `EnumWithDiscriminant: Encode`
[INFO] [stdout]             `EnumWithDiscriminant: WrapperTypeEncode`
[INFO] [stdout]             which is required by `EnumWithDiscriminant: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `size_hint` exists for enum `EnumWithDiscriminant`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/size_hint.rs:77:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |     enum EnumWithDiscriminant {
[INFO] [stdout]     |     ------------------------- method `size_hint` not found for this enum because it doesn't satisfy `<EnumWithDiscriminant as Deref>::Target = _`, `EnumWithDiscriminant: Encode` or `EnumWithDiscriminant: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout]  77 |     assert_eq!(v.size_hint(), discriminant);
[INFO] [stdout]     |                  ^^^^^^^^^ method cannot be called on `EnumWithDiscriminant` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<EnumWithDiscriminant as Deref>::Target = _`
[INFO] [stdout]             which is required by `EnumWithDiscriminant: Encode`
[INFO] [stdout]             `EnumWithDiscriminant: WrapperTypeEncode`
[INFO] [stdout]             which is required by `EnumWithDiscriminant: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `size_hint`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout]             candidate #2: `Iterator`
[INFO] [stdout]             candidate #3: `itertools::merge_join::OrderingOrBool`
[INFO] [stdout]             candidate #4: `serde::de::MapAccess`
[INFO] [stdout]             candidate #5: `serde::de::SeqAccess`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `SSkip`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:139:20
[INFO] [stdout]     |
[INFO] [stdout]  25 | struct SSkip {
[INFO] [stdout]     | ------------ method `encode` not found for this struct because it doesn't satisfy `<SSkip as Deref>::Target = _`, `SSkip: Encode` or `SSkip: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 139 |     assert_eq!(s_skip.encode(), s_skip_encoded);
[INFO] [stdout]     |                       ^^^^^^ method cannot be called on `SSkip` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<SSkip as Deref>::Target = _`
[INFO] [stdout]             which is required by `SSkip: Encode`
[INFO] [stdout]             `SSkip: WrapperTypeEncode`
[INFO] [stdout]             which is required by `SSkip: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `Sc`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:140:16
[INFO] [stdout]     |
[INFO] [stdout]  34 | struct Sc {
[INFO] [stdout]     | --------- method `encode` not found for this struct because it doesn't satisfy `<Sc as Deref>::Target = _`, `Sc: Encode` or `Sc: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 140 |     assert_eq!(sc.encode(), sc_encoded);
[INFO] [stdout]     |                   ^^^^^^ method cannot be called on `Sc` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Sc as Deref>::Target = _`
[INFO] [stdout]             which is required by `Sc: Encode`
[INFO] [stdout]             `Sc: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Sc: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `jam-codec` (test "size_hint") due to 13 previous errors
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `Sh<u32>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:141:16
[INFO] [stdout]     |
[INFO] [stdout]  40 | struct Sh<T: HasCompact>
[INFO] [stdout]     | ------------------------ method `encode` not found for this struct because it doesn't satisfy `<Sh<u32> as Deref>::Target = _`, `Sh<u32>: Encode` or `Sh<u32>: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 141 |     assert_eq!(sh.encode(), sh_encoded);
[INFO] [stdout]     |                   ^^^^^^ method cannot be called on `Sh<u32>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Sh<u32> as Deref>::Target = _`
[INFO] [stdout]             which is required by `Sh<u32>: Encode`
[INFO] [stdout]             `Sh<u32>: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Sh<u32>: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `U`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:142:15
[INFO] [stdout]     |
[INFO] [stdout]  60 | struct U(u32);
[INFO] [stdout]     | -------- method `encode` not found for this struct because it doesn't satisfy `<U as Deref>::Target = _`, `U: Encode` or `U: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 142 |     assert_eq!(u.encode(), u_encoded);
[INFO] [stdout]     |                  ^^^^^^ method cannot be called on `U` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<U as Deref>::Target = _`
[INFO] [stdout]             which is required by `U: Encode`
[INFO] [stdout]             `U: WrapperTypeEncode`
[INFO] [stdout]             which is required by `U: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `USkip`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:143:20
[INFO] [stdout]     |
[INFO] [stdout]  90 | struct USkip(#[codec(skip)] u32, u32, #[codec(skip)] u32);
[INFO] [stdout]     | ------------ method `encode` not found for this struct because it doesn't satisfy `<USkip as Deref>::Target = _`, `USkip: Encode` or `USkip: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 143 |     assert_eq!(u_skip.encode(), u_skip_encoded);
[INFO] [stdout]     |                       ^^^^^^ method cannot be called on `USkip` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<USkip as Deref>::Target = _`
[INFO] [stdout]             which is required by `USkip: Encode`
[INFO] [stdout]             `USkip: WrapperTypeEncode`
[INFO] [stdout]             which is required by `USkip: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `Uc`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:144:16
[INFO] [stdout]     |
[INFO] [stdout]  93 | struct Uc(#[codec(compact)] u32);
[INFO] [stdout]     | --------- method `encode` not found for this struct because it doesn't satisfy `<Uc as Deref>::Target = _`, `Uc: Encode` or `Uc: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 144 |     assert_eq!(uc.encode(), uc_encoded);
[INFO] [stdout]     |                   ^^^^^^ method cannot be called on `Uc` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Uc as Deref>::Target = _`
[INFO] [stdout]             which is required by `Uc: Encode`
[INFO] [stdout]             `Uc: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Uc: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `encode` found for struct `Compact<T>` in the current scope
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:145:18
[INFO] [stdout]     |
[INFO] [stdout] 145 |     assert_eq!(ucom.encode(), ucom_encoded);
[INFO] [stdout]     |                     ^^^^^^ method not found in `Compact<U>`
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 145 |     assert_eq!(ucom.0.0.encode(), ucom_encoded);
[INFO] [stdout]     |                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `Ucas`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:146:18
[INFO] [stdout]     |
[INFO] [stdout]  96 | struct Ucas(#[codec(compact)] U);
[INFO] [stdout]     | ----------- method `encode` not found for this struct because it doesn't satisfy `<Ucas as Deref>::Target = _`, `Ucas: Encode` or `Ucas: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 146 |     assert_eq!(ucas.encode(), ucas_encoded);
[INFO] [stdout]     |                     ^^^^^^ method cannot be called on `Ucas` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Ucas as Deref>::Target = _`
[INFO] [stdout]             which is required by `Ucas: Encode`
[INFO] [stdout]             `Ucas: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Ucas: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `USkipcas`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:147:24
[INFO] [stdout]     |
[INFO] [stdout]  99 | struct USkipcas(#[codec(compact)] USkip);
[INFO] [stdout]     | --------------- method `encode` not found for this struct because it doesn't satisfy `<USkipcas as Deref>::Target = _`, `USkipcas: Encode` or `USkipcas: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 147 |     assert_eq!(u_skip_cas.encode(), u_skip_cas_encoded);
[INFO] [stdout]     |                           ^^^^^^ method cannot be called on `USkipcas` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<USkipcas as Deref>::Target = _`
[INFO] [stdout]             which is required by `USkipcas: Encode`
[INFO] [stdout]             `USkipcas: WrapperTypeEncode`
[INFO] [stdout]             which is required by `USkipcas: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `SSkipcas`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:148:24
[INFO] [stdout]     |
[INFO] [stdout] 102 | struct SSkipcas(#[codec(compact)] SSkip);
[INFO] [stdout]     | --------------- method `encode` not found for this struct because it doesn't satisfy `<SSkipcas as Deref>::Target = _`, `SSkipcas: Encode` or `SSkipcas: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 148 |     assert_eq!(s_skip_cas.encode(), s_skip_cas_encoded);
[INFO] [stdout]     |                           ^^^^^^ method cannot be called on `SSkipcas` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<SSkipcas as Deref>::Target = _`
[INFO] [stdout]             which is required by `SSkipcas: Encode`
[INFO] [stdout]             `SSkipcas: WrapperTypeEncode`
[INFO] [stdout]             which is required by `SSkipcas: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `encode` exists for struct `Uh<u32>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:149:16
[INFO] [stdout]     |
[INFO] [stdout] 105 | struct Uh<T: HasCompact>(#[codec(encoded_as = "<T as HasCompact>::Type")] T)
[INFO] [stdout]     | ------------------------ method `encode` not found for this struct because it doesn't satisfy `<Uh<u32> as Deref>::Target = _`, `Uh<u32>: Encode` or `Uh<u32>: WrapperTypeEncode`
[INFO] [stdout] ...
[INFO] [stdout] 149 |     assert_eq!(uh.encode(), uh_encoded);
[INFO] [stdout]     |                   ^^^^^^ method cannot be called on `Uh<u32>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Uh<u32> as Deref>::Target = _`
[INFO] [stdout]             which is required by `Uh<u32>: Encode`
[INFO] [stdout]             `Uh<u32>: WrapperTypeEncode`
[INFO] [stdout]             which is required by `Uh<u32>: Encode`
[INFO] [stdout] note: the trait `WrapperTypeEncode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub trait WrapperTypeEncode: Deref {}
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `encode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `S`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:151:19
[INFO] [stdout]     |
[INFO] [stdout]   9 | struct S {
[INFO] [stdout]     | -------- function or associated item `decode` not found for this struct because it doesn't satisfy `<S as WrapperTypeDecode>::Wrapped = _`, `S: Decode` or `S: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 151 |     assert_eq!(s, S::decode(&mut s_encoded).unwrap());
[INFO] [stdout]     |                      ^^^^^^ function or associated item cannot be called on `S` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<S as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `S: Decode`
[INFO] [stdout]             `S: WrapperTypeDecode`
[INFO] [stdout]             which is required by `S: Decode`
[INFO] [stdout]             `<&S as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&S: Decode`
[INFO] [stdout]             `&S: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&S: Decode`
[INFO] [stdout]             `<&mut S as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut S: Decode`
[INFO] [stdout]             `&mut S: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut S: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `SSkip`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:152:28
[INFO] [stdout]     |
[INFO] [stdout]  25 | struct SSkip {
[INFO] [stdout]     | ------------ function or associated item `decode` not found for this struct because it doesn't satisfy `<SSkip as WrapperTypeDecode>::Wrapped = _`, `SSkip: Decode` or `SSkip: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 152 |     assert_eq!(s_skip, SSkip::decode(&mut s_skip_encoded).unwrap());
[INFO] [stdout]     |                               ^^^^^^ function or associated item cannot be called on `SSkip` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<SSkip as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `SSkip: Decode`
[INFO] [stdout]             `SSkip: WrapperTypeDecode`
[INFO] [stdout]             which is required by `SSkip: Decode`
[INFO] [stdout]             `<&SSkip as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&SSkip: Decode`
[INFO] [stdout]             `&SSkip: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&SSkip: Decode`
[INFO] [stdout]             `<&mut SSkip as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut SSkip: Decode`
[INFO] [stdout]             `&mut SSkip: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut SSkip: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Sc`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:153:21
[INFO] [stdout]     |
[INFO] [stdout]  34 | struct Sc {
[INFO] [stdout]     | --------- function or associated item `decode` not found for this struct because it doesn't satisfy `<Sc as WrapperTypeDecode>::Wrapped = _`, `Sc: Decode` or `Sc: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 153 |     assert_eq!(sc, Sc::decode(&mut sc_encoded).unwrap());
[INFO] [stdout]     |                        ^^^^^^ function or associated item cannot be called on `Sc` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Sc as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Sc: Decode`
[INFO] [stdout]             `Sc: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Sc: Decode`
[INFO] [stdout]             `<&Sc as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Sc: Decode`
[INFO] [stdout]             `&Sc: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Sc: Decode`
[INFO] [stdout]             `<&mut Sc as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Sc: Decode`
[INFO] [stdout]             `&mut Sc: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Sc: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Sh<_>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout]  40 | struct Sh<T: HasCompact>
[INFO] [stdout]     | ------------------------ function or associated item `decode` not found for this struct because it doesn't satisfy `<Sh<_> as WrapperTypeDecode>::Wrapped = _`, `Sh<_>: Decode` or `Sh<_>: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 154 |     assert_eq!(sh, Sh::decode(&mut sh_encoded).unwrap());
[INFO] [stdout]     |                        ^^^^^^ function or associated item cannot be called on `Sh<_>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Sh<_> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Sh<_>: Decode`
[INFO] [stdout]             `Sh<_>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Sh<_>: Decode`
[INFO] [stdout]             `<&Sh<_> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Sh<_>: Decode`
[INFO] [stdout]             `&Sh<_>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Sh<_>: Decode`
[INFO] [stdout]             `<&mut Sh<_> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Sh<_>: Decode`
[INFO] [stdout]             `&mut Sh<_>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Sh<_>: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `U`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:155:19
[INFO] [stdout]     |
[INFO] [stdout]  60 | struct U(u32);
[INFO] [stdout]     | -------- function or associated item `decode` not found for this struct because it doesn't satisfy `<U as WrapperTypeDecode>::Wrapped = _`, `U: Decode` or `U: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 155 |     assert_eq!(u, U::decode(&mut u_encoded).unwrap());
[INFO] [stdout]     |                      ^^^^^^ function or associated item cannot be called on `U` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<U as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `U: Decode`
[INFO] [stdout]             `U: WrapperTypeDecode`
[INFO] [stdout]             which is required by `U: Decode`
[INFO] [stdout]             `<&U as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&U: Decode`
[INFO] [stdout]             `&U: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&U: Decode`
[INFO] [stdout]             `<&mut U as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut U: Decode`
[INFO] [stdout]             `&mut U: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut U: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `USkip`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:156:28
[INFO] [stdout]     |
[INFO] [stdout]  90 | struct USkip(#[codec(skip)] u32, u32, #[codec(skip)] u32);
[INFO] [stdout]     | ------------ function or associated item `decode` not found for this struct because it doesn't satisfy `<USkip as WrapperTypeDecode>::Wrapped = _`, `USkip: Decode` or `USkip: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 156 |     assert_eq!(u_skip, USkip::decode(&mut u_skip_encoded).unwrap());
[INFO] [stdout]     |                               ^^^^^^ function or associated item cannot be called on `USkip` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<USkip as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `USkip: Decode`
[INFO] [stdout]             `USkip: WrapperTypeDecode`
[INFO] [stdout]             which is required by `USkip: Decode`
[INFO] [stdout]             `<&USkip as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&USkip: Decode`
[INFO] [stdout]             `&USkip: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&USkip: Decode`
[INFO] [stdout]             `<&mut USkip as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut USkip: Decode`
[INFO] [stdout]             `&mut USkip: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut USkip: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Uc`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:157:21
[INFO] [stdout]     |
[INFO] [stdout]  93 | struct Uc(#[codec(compact)] u32);
[INFO] [stdout]     | --------- function or associated item `decode` not found for this struct because it doesn't satisfy `<Uc as WrapperTypeDecode>::Wrapped = _`, `Uc: Decode` or `Uc: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 157 |     assert_eq!(uc, Uc::decode(&mut uc_encoded).unwrap());
[INFO] [stdout]     |                        ^^^^^^ function or associated item cannot be called on `Uc` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Uc as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Uc: Decode`
[INFO] [stdout]             `Uc: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Uc: Decode`
[INFO] [stdout]             `<&Uc as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Uc: Decode`
[INFO] [stdout]             `&Uc: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Uc: Decode`
[INFO] [stdout]             `<&mut Uc as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Uc: Decode`
[INFO] [stdout]             `&mut Uc: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Uc: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Compact<U>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:158:35
[INFO] [stdout]     |
[INFO] [stdout] 158 |     assert_eq!(ucom, <Compact::<U>>::decode(&mut ucom_encoded).unwrap());
[INFO] [stdout]     |                                      ^^^^^^ function or associated item cannot be called on `Compact<U>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<&Compact<U> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Compact<U>: Decode`
[INFO] [stdout]             `&Compact<U>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Compact<U>: Decode`
[INFO] [stdout]             `<&mut Compact<U> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Compact<U>: Decode`
[INFO] [stdout]             `&mut Compact<U>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Compact<U>: Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Ucas`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:159:25
[INFO] [stdout]     |
[INFO] [stdout]  96 | struct Ucas(#[codec(compact)] U);
[INFO] [stdout]     | ----------- function or associated item `decode` not found for this struct because it doesn't satisfy `<Ucas as WrapperTypeDecode>::Wrapped = _`, `Ucas: Decode` or `Ucas: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 159 |     assert_eq!(ucas, Ucas::decode(&mut ucas_encoded).unwrap());
[INFO] [stdout]     |                            ^^^^^^ function or associated item cannot be called on `Ucas` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Ucas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Ucas: Decode`
[INFO] [stdout]             `Ucas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Ucas: Decode`
[INFO] [stdout]             `<&Ucas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Ucas: Decode`
[INFO] [stdout]             `&Ucas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Ucas: Decode`
[INFO] [stdout]             `<&mut Ucas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Ucas: Decode`
[INFO] [stdout]             `&mut Ucas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Ucas: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `USkipcas`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:160:35
[INFO] [stdout]     |
[INFO] [stdout]  99 | struct USkipcas(#[codec(compact)] USkip);
[INFO] [stdout]     | --------------- function or associated item `decode` not found for this struct because it doesn't satisfy `<USkipcas as WrapperTypeDecode>::Wrapped = _`, `USkipcas: Decode` or `USkipcas: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 160 |     assert_eq!(u_skip_cas, USkipcas::decode(&mut u_skip_cas_encoded).unwrap());
[INFO] [stdout]     |                                      ^^^^^^ function or associated item cannot be called on `USkipcas` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<USkipcas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `USkipcas: Decode`
[INFO] [stdout]             `USkipcas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `USkipcas: Decode`
[INFO] [stdout]             `<&USkipcas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&USkipcas: Decode`
[INFO] [stdout]             `&USkipcas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&USkipcas: Decode`
[INFO] [stdout]             `<&mut USkipcas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut USkipcas: Decode`
[INFO] [stdout]             `&mut USkipcas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut USkipcas: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `SSkipcas`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:161:35
[INFO] [stdout]     |
[INFO] [stdout] 102 | struct SSkipcas(#[codec(compact)] SSkip);
[INFO] [stdout]     | --------------- function or associated item `decode` not found for this struct because it doesn't satisfy `<SSkipcas as WrapperTypeDecode>::Wrapped = _`, `SSkipcas: Decode` or `SSkipcas: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 161 |     assert_eq!(s_skip_cas, SSkipcas::decode(&mut s_skip_cas_encoded).unwrap());
[INFO] [stdout]     |                                      ^^^^^^ function or associated item cannot be called on `SSkipcas` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<SSkipcas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `SSkipcas: Decode`
[INFO] [stdout]             `SSkipcas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `SSkipcas: Decode`
[INFO] [stdout]             `<&SSkipcas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&SSkipcas: Decode`
[INFO] [stdout]             `&SSkipcas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&SSkipcas: Decode`
[INFO] [stdout]             `<&mut SSkipcas as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut SSkipcas: Decode`
[INFO] [stdout]             `&mut SSkipcas: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut SSkipcas: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the function or associated item `decode` exists for struct `Uh<_>`, but its trait bounds were not satisfied
[INFO] [stdout]    --> tests/single_field_struct_encoding.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 105 | struct Uh<T: HasCompact>(#[codec(encoded_as = "<T as HasCompact>::Type")] T)
[INFO] [stdout]     | ------------------------ function or associated item `decode` not found for this struct because it doesn't satisfy `<Uh<_> as WrapperTypeDecode>::Wrapped = _`, `Uh<_>: Decode` or `Uh<_>: WrapperTypeDecode`
[INFO] [stdout] ...
[INFO] [stdout] 162 |     assert_eq!(uh, Uh::decode(&mut uh_encoded).unwrap());
[INFO] [stdout]     |                        ^^^^^^ function or associated item cannot be called on `Uh<_>` due to unsatisfied trait bounds
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `<Uh<_> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `Uh<_>: Decode`
[INFO] [stdout]             `Uh<_>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `Uh<_>: Decode`
[INFO] [stdout]             `<&Uh<_> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&Uh<_>: Decode`
[INFO] [stdout]             `&Uh<_>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&Uh<_>: Decode`
[INFO] [stdout]             `<&mut Uh<_> as WrapperTypeDecode>::Wrapped = _`
[INFO] [stdout]             which is required by `&mut Uh<_>: Decode`
[INFO] [stdout]             `&mut Uh<_>: WrapperTypeDecode`
[INFO] [stdout]             which is required by `&mut Uh<_>: Decode`
[INFO] [stdout] note: the trait `WrapperTypeDecode` must be implemented
[INFO] [stdout]    --> /opt/rustwide/workdir/src/codec.rs:521:1
[INFO] [stdout]     |
[INFO] [stdout] 521 | pub trait WrapperTypeDecode: Sized {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following trait defines an item `decode`, perhaps you need to implement it:
[INFO] [stdout]             candidate #1: `Decode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `jam-codec` (test "single_field_struct_encoding") due to 36 previous errors
[INFO] running `Command { std: "docker" "inspect" "0d5d4f802b7b7709ab4bfd5f39e3159d0b97c0d4cfb019efb5a752f8b8f86683", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d5d4f802b7b7709ab4bfd5f39e3159d0b97c0d4cfb019efb5a752f8b8f86683", kill_on_drop: false }`
[INFO] [stdout] 0d5d4f802b7b7709ab4bfd5f39e3159d0b97c0d4cfb019efb5a752f8b8f86683
